Что делает BlazeDS Livecycle Data Services, а что-то вроде PyAMF или RubyAMF - нет?

Я делаю технический обзор и смотрю на интеграцию AMF с различными бэкэндами (Rails, Python, Grails и т. Д.).

Существует множество вариантов, вопрос в том, что делают продукты Adobe (BlazeDS и т. Д.), Чего нет у чего-то вроде RubyAMF / pyAMF?

4 ответа

Решение

Помимо каналов NIO (RTMP), LCDS включает в себя также функции "управления данными".

Используя эту функцию, вы в основном реализуете в классе ActionScript CRUD-подобный интерфейс, определенный в LCDS, и получаете:

  • автоматическая последовательная загрузка списков (большие списки / таблицы данных загружаются при прокрутке)
  • автоматическое управление crud (вы получаете объект локально во flash, изменяете его, отправляете обратно и DB обновляется автоматически)
  • функция разрешения конфликтов (если несколько пользователей пытаются обновить одну и ту же запись одновременно)
  • если я хорошо помню, также улучшена интеграция с движком рабочего процесса LiveCycle ES

IMO, это может быть очень быстро разработано таким образом, но только если у вас есть только базовые требования и простая архитектура (забудьте SOA, которая в противном случае так хорошо работает с Flex). Я в порядке с BlazeDS.

Описанные здесь функции управления данными для LCDS, безусловно, действительны, однако я полагаю, что они не позволяют вам быстрее разработать решение. Разработчик все еще должен написать ВСЕ код доступа к данным, выполнение запросов, извлечение данных из носителей данных в объекты-значения. Все это было решено в десятки раз с помощью генераторов кода. Например, подход к управлению данными в WebORB для Java (как и в WebORB для.NET и PHP) основан на генерации кода, который создает код как для клиентской, так и для серверной части. Вы получаете все API-интерфейсы ActionScript из генератора кода для полного CRUD.

Кроме того, WebORB предоставляет функции потоковой передачи видео и обмена сообщениями в реальном времени и выходит за рамки того, что предлагают вместе BlazeDS и LCDS, особенно учитывая, что продукт бесплатный. Просто погугли это.

У Adobe есть два продукта: Livecycle Data Services ES (LCDS) и BlazeDS. BlazeDS содержит подмножество функций LCDS и был сделан с открытым исходным кодом. К сожалению, каналы NIO (RTMP NIO/HTTP) и функции DataManagement реализованы только в LCDS, а не в BlazeDS.

BlazeDS можно использовать только для интеграции Flex с бэкэндом Java. Он предлагает не только услуги удаленного взаимодействия, использующие сериализацию AMF (например, RubyAMF), но также функции обмена сообщениями и совместной работы - посмотрите эту ссылку ( http://livedocs.adobe.com/blazeds/1/blazeds_devguide/help.html?content=lcoverview_3.html). Также я полагаю, что поддержка лучше по сравнению с RubyAMF/pyAMF.

Если ваш бэкэнд - JAVA, и вы хотите использовать только бесплатный продукт, вы также можете использовать GraniteDS или WebORB (конкуренты BlazeDS)

Хороший вопрос. Я не рубиновый парень (я использую java с flex), но то, что я считаю, отличает Blazeds от коммерческого Livecycle DS.

  1. Поддержка потокового протокола (rtmp) - конкурс на кометы и тому подобное, поставка видео
  2. Некоторые продвинутые вещи для спящих объектов и большого кэширования набора результатов, которые я не совсем понимаю или не нуждаюсь
    1. служба поддержки? Могут быть и другие, но это те, которые я знаю по макушке.
Другие вопросы по тегам