36
Облачные платформы для Java Структура и Различия Руслан Синицкий

Java cloud platforms. jee conf 2012

Embed Size (px)

Citation preview

Page 1: Java cloud platforms. jee conf 2012

Облачные платформы для Java Структура и Различия

Руслан Синицкий

Page 2: Java cloud platforms. jee conf 2012

Традиционный хостинг

• Покупка/аренда серверов • Конфигурация OC • Конфигурация серверов

приложений

• Конфигурация БД

• Развертывание приложения

• И опять то же самое…

Page 3: Java cloud platforms. jee conf 2012

Потом появилось облако…

SaaS

PaaS

IaaS

Page 4: Java cloud platforms. jee conf 2012

Что такое Платформа как Сервис ?

Page 5: Java cloud platforms. jee conf 2012

Рынок PaaS

Page 6: Java cloud platforms. jee conf 2012

Сравнительные характеристики

• архитектура

• поддерживаемые языки

• масштабирование

• поддерживаемый стек технологий

• используемые слои виртуализации

• репликация

Page 7: Java cloud platforms. jee conf 2012

Сравнительные характеристики

• возможность сборки проекта в облаке

• плагины

• интерфейс

• глобальная доступность и возможность выбора провайдера

• модель оплаты

• SLA

• простота использования

Page 8: Java cloud platforms. jee conf 2012
Page 9: Java cloud platforms. jee conf 2012

Архитектура платформы

Page 10: Java cloud platforms. jee conf 2012

Cloud Foundry

• Поддерживаемые языки: Java, Groovy, Ruby, Node.js • «Ручное» горизонтальное масштабирование • Используемый слой виртуализации: Vmware • Репликация • Возможность сборки проекта в облаке

Page 11: Java cloud platforms. jee conf 2012

Cloud Foundry

• Cервера приложений: Tomcat • Базы данных: MySQL, MongoDB, Redis, PostgreSQL • Плагины: Eclipse, Maven, Grails, EXO • Нет GUI, только командная строка • Сейчас хостинг доступен только в США • Сервис пока бесплатен (бета версия) • Возможность выбора провайдера • SLA

Page 12: Java cloud platforms. jee conf 2012

Для начала работы:

Разверните приложение

Привяжите инстанции сервиса к приложению

Создайте инстанции сервиса

Сконфигурируйте приложение

Установите Micro Cloud Foundry

Установите все необходимые инструменты

Page 13: Java cloud platforms. jee conf 2012
Page 14: Java cloud platforms. jee conf 2012

Архитектура платформы

Page 15: Java cloud platforms. jee conf 2012

Heroku

• Поддерживаемые языки: Java, Ruby, Node.js, Scala, Clojure, PHP • «Ручное» горизонтальное масштабирование • Вертикальное масштабирование (вообще нельзя

менять размер контейнера) • Используемый слой виртуализации: Xen+LXC

• Репликация баз данных

• Сборка проекта только в облаке (нельзя

загрузить WAR)

Page 16: Java cloud platforms. jee conf 2012

Heroku

• Сервера приложений: Tomcat, Jetty • Базы данных: Cloudant, Membase, MongoDB, Redis, PostgreSQL • Плагины: Grails, Eclipse, Jetbrains, Play Framework, Rails • Командная строка • Хостинг только в США • Не совсем понятная модель оплаты • Возможность выбора провайдера • SLA

Page 17: Java cloud platforms. jee conf 2012

Для начала работы:

Разверните Ваш код

Сохраните Ваше приложение в Git

Укажите типы процессов с помощью Procfile

Войдите в систему

Установите Heroku Toolbelt

Page 18: Java cloud platforms. jee conf 2012

Модель оплаты

Page 19: Java cloud platforms. jee conf 2012

Выделенные базы данных

Page 20: Java cloud platforms. jee conf 2012

Add-ons

Page 21: Java cloud platforms. jee conf 2012
Page 22: Java cloud platforms. jee conf 2012

Архитектура платформы

Page 23: Java cloud platforms. jee conf 2012

Google App Engine

• Поддерживаемые языки: Java, Python, Go • Автоматическое горизонтальное

масштабирование • Вертикальное масштабирование • Не используют виртуализацию

• Репликация

• Возможность сборки проекта в облаке

Page 24: Java cloud platforms. jee conf 2012

Google App Engine

• Сервера приложений: собственные разработки • Базы данных: собственное хранилище • Плагины: Maven, Eclipse, Grails • Командная строка • Американский хостинг • Возможность выбора провайдера • Сначала бесплатный сервис, потом – очень

дорогой • 99,95% - 95, 00% uptime в месяц

Page 25: Java cloud platforms. jee conf 2012

Модель оплаты

Page 26: Java cloud platforms. jee conf 2012

Модель оплаты

Page 27: Java cloud platforms. jee conf 2012

Разверните приложение

Загрузите приложение

Зарегистрируйте приложение

Сконфигурируйте приложение

Установите Java SDK

Скачайте и установите App Engine Java SDK и все необходимые компоненты

Для начала работы:

Page 28: Java cloud platforms. jee conf 2012
Page 29: Java cloud platforms. jee conf 2012

Архитектура платформы

Page 30: Java cloud platforms. jee conf 2012

Конструктор окружений

Page 31: Java cloud platforms. jee conf 2012

Jelastic

• Поддерживаемые языки: Java, JRuby, Scala, Groovy, ColdFusion/CFML

• Автоматическое вертикальное и «ручное» горизонтальное масштабирование

• Используемый слой виртуализации: Parallels Virtuozzo containers

• Репликация сессий • Возможность сборки проекта в облаке

Page 32: Java cloud platforms. jee conf 2012

Jelastic

• Сервера приложений: Tomcat 6 и 7, Jetty, GlassFish

• Базы данных: MySQL, MariaDB, PostgreSQL, MongoDB, CouchDB

• Плагины: Maven, Ant, Play framework • Доступен в США, Европе и России • Возможность выбора хостинг провайдера • Удобный GUI • Оплата по факту потребления ресурсов • SLA зависит от хостинг провайдера

Page 33: Java cloud platforms. jee conf 2012

Модель оплаты

Page 34: Java cloud platforms. jee conf 2012

Для начала работы:

Разверните приложение

Загрузите WAR файл или подключитесь к GIT/SVN

Создайте окружение

Page 35: Java cloud platforms. jee conf 2012

PaaS для Вас :)

Page 36: Java cloud platforms. jee conf 2012

Спасибо за внимание! Вопросы?

http://jelastic.com