Советы по технологии стека: Google App Engine, FLEX, GraniteDS (Tide), Java, Spring - PullRequest
1 голос
/ 30 июня 2011

Друзья

Ваш технологический стек - это веревка, которая спасет вас или повесит вас. Для запуска веб-сервиса для одного человека - что это за веревка?

Платформа: Google App Engine, Серверная часть: Хранилище данных Google App Engine, Уровень обслуживания: Java, Внешний интерфейс: Adobe Flex

Платформа интеграции клиент / сервис: GraniteDS, Платформа клиентских приложений: Tide (часть стека GraniteDS), Платформа приложений сервисов: Spring


Хорошо, позвольте мне дать вам мой контекст.

Flextras прав! Технология в основном выбирается из-за знаний / инфраструктуры ... Вот как я закончил с приведенным выше списком:

Прежде всего: мне нравится FLEX. Легко создавать богатые пользовательские интерфейсы, и Adobe продвигает его в направлении рабочего стола, Интернета и устройств. Маркетинг Adobe дает нам обещание: «Интеграция с другими инструментами в наборе для творчества» и «Развертывание везде». (Конечно, это слишком хорошо, чтобы быть правдой, но они, кажется, на правильном пути.) Итак, давайте выберем FLEX в качестве нашей инфраструктуры пользовательского интерфейса.

FLEX часто должен интегрироваться с серверной технологией. Так какую технологию выбрать для сервисного уровня? Я знаю старый PHP, но динамическое, нетипизированное ощущение языка, просто не чувствуется правильным, работая бок о бок с flex.

Flex черпает вдохновение из Java. И думать в ActionScript и думать в Java просто кажется правильным. (Я изучал Scala, но инструментальные средства и лучшие практики еще не созданы для того, чтобы кто-то, как я, смог освоить этот замечательный новый язык). Я решил изучать Java, надеясь, что это сделает шаблоны и знания многократно используемыми между программированием на стороне сервера и программированием на стороне клиента.

Проблема с Java заключается в ее сложности и в том, что ее сложнее развернуть (для PHP вы можете легко развернуть ее в недорогом веб-отеле). Моя идея - тест, и я не хочу затрат и серверов (кто?). Я хочу сосредоточиться на изучении своих идей. Поэтому я смотрю на Google App Engine, который предлагает бесплатную квоту Java для запуска веб-приложений.

Проблема с механизмом Google App заключается в том, что это ограниченная модель Sandbox, и многие фреймворки не развертываются как есть.

Я хочу технологическую линию, которая будет работать вместе с минимальным количеством взлома. И именно здесь я прошу вашего опыта, чтобы помочь мне выбрать правильные платформы для интеграции FLEX с Java в движке Google App.

Я хочу использовать строго типизированные объекты от сервера к клиенту, поэтому я ищу решение AMF. Из того, что я могу сказать, просматривая форумы, BlazeDS нуждается во взломе, Pimento / Cinnamon не работает, Weborb или Adobe Livecykle не бесплатны. Однако GraniteDS работает в магазине приложений Google без исправлений.

GraniteDS поставляется с клиентской средой, называемой Tide, которая интегрируется с серверными технологиями. Но еще раз Google App Engine - ограничительная среда. Шов (который лучше всего интегрируется с Tide) - это хакерская работа в движке приложений Google. EJB3 или CDI - это технологии Java EE 6, которые не поддерживаются Jetty (контейнер сервлетов, поддерживающий Google App Engine). Весенние швы как жизнеспособный кандидат однако.

Движок приложений Google не имеет реляционной базы данных, но имеет интерфейс. Это новое хранилище данных за интерфейсом JPA, которое поддерживают Spring и Tide (GraniteDS).

Я не уверен, что все эти бессвязные дела делают кого-либо из нас мудрее.

Что я спрашиваю, так это: от FLEX до Google App Store, какая линейка технологий дает мне наименьшее количество веревок, с которыми я могу повеситься? Я предлагаю Tide / GraniteDS / Java / Spring / JPA. Но что я знаю, пока не попробовал.

1 Ответ

0 голосов
/ 30 июня 2011

Учитывая неопределенность вопроса:

Я использую Flex / Cairgorme / Blazeds / JBossAS / Oracle Java EE для критически важного, высокопроизводительного и масштабируемого приложения.Я очень рекомендую это комбо.

...