Как повысить производительность в моем стеке Flex / Java? - PullRequest
1 голос
/ 20 ноября 2008

Я начинаю новый проект RIA с Java на сервере. Я единственный разработчик, и приложение является бизнес-приложением. Мой текущий стек выглядит так:

MySQL || Spring (JdbcTemplate для доступа к данным) || BlazeDS (удаленное взаимодействие) || Flex (Кэрнгорм)

Мой вопрос: какие изменения я могу сделать, чтобы повысить производительность? Ручное кодирование SQL, объектов сущностей на стороне сервера, объектов значений на стороне клиента и всего, что связано с Cairngorm, очевидно, является трудным делом, но я не уверен, какие инфраструктуры более высокого уровня следует представить.

Какой стек Flex / Java вам пригодился?

Ответы [ 5 ]

4 голосов
/ 01 декабря 2008

Я бы серьезно пересмотрел использование Cairngorm. На мой взгляд, это довольно раздутый фреймворк, который вводит много абстракций, которые вы никогда не будете использовать. Проверить:

http://code.google.com/p/swizframework http://www.spicefactory.org

Оба вводят концепцию внедрения зависимостей в ваше приложение Flex.

Также +1 за спящий режим. Я бы использовал стандартные аннотации JPA для класса Java и расширил бы их аннотациями Hibernate, так как вы обнаружите, что вам нужны дополнительные функции.

4 голосов
/ 20 ноября 2008

Ручное кодирование SQL

Hibernate - это вариант для вырезания.

Одной вещью, которая может представлять интерес, является Grails с доступным Flex Plugin. Он построен на Spring, Hibernate и BlazeDS, так что все для вас. Было невероятно легко получить удаленное взаимодействие с хранимыми объектами и отвечать на вызовы AMF. Я использовал это, а затем перешел к реализации RESTful E4X, так как мне было намного проще отлаживать и настраивать, поскольку я мог просматривать выходные данные сервера в браузере и иметь более жесткий контроль над тем, что именно я вернул в свое приложение Flex (отложенная загрузка проблемы в коллекциях, использующих BlazeDS, временами были головной болью).

Вот краткое руководство, показывающее, насколько прост весь стек Grails + Flex Plugin: BlazeDS в Grails

2 голосов
/ 03 апреля 2009

Ознакомьтесь с новым проектом интеграции с Spring BlazeDS на springsource.org

Spring BlazeDS Integration - это новый дополнение к портфолио Spring, и компонент полного Spring Web стек. Целью этого проекта является упростить сборку на базе Spring Богатые интернет-приложения с использованием Adobe Flex как клиент переднего плана. Целью является для достижения этой цели путем предоставления первоклассная поддержка использования открытого исходный проект Adobe BlazeDS и его мощное удаленное взаимодействие и обмен сообщениями объекты в сочетании с знакомая модель программирования Spring.

1 голос
/ 22 ноября 2008

В качестве альтернативы ручному кодированию sql, кроме hibernate, вы можете рассмотреть JPA / Toplink. А поскольку вы уже из Spring Camp, посмотрите Spring ActionScript (ранее известный как Prana), это среда IOC для Flex. Это решает многие присущие проблемы в Cairngorm. Также хорошая IDE, которая поддерживает Flex / Actionscript, например IntelliJ IDEA 8.

Чего не хватает между Flex и BlazeDS, так это то, что у него нет какой-либо целевой страницы, на которой вы видите список всех доступных служб, просто набрав URL в браузере (аналогично конечной точке веб-службы).

0 голосов
/ 25 февраля 2009

Можно попробовать GraniteDS . Это альтернатива BlazeDS, с генератором ActionScript, интеграцией Spring (безопасность Spring) и, если вы используете реализацию JPA, поможет вам с Lazy Initialization (прозрачным способом).

...