Hivext – облачная платформа для быстрой разработки ...

Post on 21-Jun-2015

1.419 views 4 download

Transcript of Hivext – облачная платформа для быстрой разработки ...

Hivext – облачная платформа

для быстрой разработки

интернет приложений

«SaaS и Cloud Computing станут широко распространенными

технологиями. Единственный вопрос заключается не в том,

произойдет ли это вообще, а в том, когда это произойдет».

Тони Лок (Tony Lock), директор программы, Freeform Dynamics

«К 2012 году до 80% компаний из Fortune 1000 будут платить за

cloud-услуги, а 30% – за инфраструктуру».

Дэрил Пламмер (Daryl Plummer) и Томас Биттман (Thomas

Bittman), Gartner

Тренд развития интереса к облачным вычислениям

HIVEXT

Hive – улей, людской муравейник

Extend – расширяться, распространяться

Что это? Hivext – это платформа для быстрой разработки интернет

приложений. Традиционное название сервер приложений. 

Для чего? Уменьшает расход ресурсов при реализации приложений.

Какие ресурсы экономятся?

• Время – скорость разработки выше

• Деньги – цена разработки ниже

• Знания - уровень знаний требуется ниже (сложные

алгоритмы уже настроены и идут в комплекте)

Готовая реализация важного и трудоемкого функционала:

• хранение данных:

• совместный доступ пользователей к данным;

• ресурсоемкие вычисления;

• масштабирование приложения;

• управление серверной нагрузкой;

• безопасность данных.

Множество сервисов функционирующих как единая

система (базы данных, безопасность, идентификация,

аутентификация, скриптинг серверной логики, другие)

Объединяет множество платформ через единый API

Web, Desktop, Mobile

•REST

•CROSS

•SOAP

•AMF, AMFX

Протоколы доступа

Ядро

Сервисы

Клиенты

Структура

ЯДРО – JAVA

Spring 3.0

ORM - Hibernate 3.5

База Данных – MySQL 5.1

Развитие платформ

А что уже реализовано?

I. Взаимосвязанный набор сервисов

II.Детальная документация и примеры

III.Hive Online IDE

Сервисы

HiAPI (High API) – сервисы высокого уровня

LoAPI (Local, Low API) – локальные методы

низкого уровня

Пользователи

Регистрация

Аутентификация

Управление аккаунтом

Данные

Структуры

Безопасность

Управление доступом

Хранилища

Файловое хранилище

Разработка

Управление приложениями

Скриптинг серверной логики

Утилиты

Пакетные вызовы

Планировщик

Система

Кластер

Правила адресации сервисов

http://api.hivext.ru/{версия}/{простр-во имен}/{имя сервиса}/{протокол}/{название метода}

http://api.hivext.ru/1.0/data/base/rest/definetype

http://api.hivext.ru/1.0/users/registration/cross/createaccount

http://api.hivext.ru/1.0/utils/scheduler/soap/addtask

Скриптинг Серверной логики Java

JavaScript (Rhino 1.7)

EJS (Embedded JavaScript Template)

Python

Ruby

Groovy

Документация и примеры

Wiki (~ 300 страниц с детальным описанием методов)

Пошаговые инструкции

Примеры использования сервисов

Готовые компоненты

Примеры виджетов

Форум

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

Пример работы с сервисом структур на клиенте

ORM (Object-relational mapping)

Объектно-реляционная проекция

• простые типы

• списки

• специальные типы

• комплексные типы

JSON mapping, Lazy Load, Projection

Hive Online IDE

Online среда разработки – позволяет приступить к

реализации собственного приложения без

предустановок специализированного

программного обеспечения.

Автоматическое масштабирование

• первое обращение – загрузка приложения в память

• увеличение нагрузки – приложение автоматически разворачивается на другие кластерные ноды

• уменьшение нагрузки – приложение автоматически сворачивается до минимального количества нод

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

Аутентификация – использует всемирно известные сервисы gmail, yahoo, yandex

Шаринг приложений между разными разработчиками

Обращение к данным из других приложений 

Вызов скриптов из других приложений

Некоторые полезные особенности

CPU

Memory

IO

Графики

Диагностика работы приложений

Направления развития 

• интеграция с социальными сетями

• генерация клиентов для разных ЯП

• интеграция в тонкие клиенты

• расширение сервисов

• локальный SDK

•виджеты

•веб, desktop, mobile приложения 

•свои сервисы

•сайты

Что можно создавать на базе платформы

Монетизация

• продажа серверных мощностей

одиночные разработчики

небольшие стартапы

• коробочная версия

крупные проекты

проекты, которым нужна своя платформа приложений 

Бесплатные квоты на один аккаунт • 1 Гб дискового пространства

• максимум 3 приложения

Лимиты для приложений• макс. время выполнение одного скрипта 30 секунд

• процессорное время неограниченно (?)

• входящий и исходящий трафик не ограничен (?)

• автоматическое распараллеливание на 2 ноды

Спасибо за внимание.

Описание, документация http://hivext.ru

Hive Online IDE http://ide.hivext.ru

Форум разработчиков http://forum.hivext.ru