Самый масштабируемый веб-стек для высокопроизводительного приложения Flash / Flex / AIR? - PullRequest
0 голосов
/ 11 июня 2009

Я нахожусь на этапе планирования нового многопользовательского клиент-серверного приложения, использующего Flash через Flex и AIR. Я пытаюсь решить, какая веб-платформа / стек лучше всего подходит для этого?

В прошлом я использовал RoR, но, насколько я понимаю, RoR является однопоточным и поэтому не является идеальным выбором для обработки потенциально тысяч одновременных запросов.

Я немного читал о Scala и Lift, и это интригующий вариант, но мне было интересно, есть ли другие языки / фреймворки, которые хорошо подойдут для моего проекта?

Ответы [ 3 ]

1 голос
/ 24 октября 2011

Недавнее сравнение вертикальной масштабируемости было сделано для Nginx и Lighty:

http://forum.gwan.com/index.php?p=/discussion/525/nginx1.0.6-vs-lighttpd1.4.29-vs-g-wan2.9.30-rpscpuram/

Может ли это принести пользу вашему приложению, зависит от многих факторов, но, учитывая информацию о процессорах, ОЗУ и RPS, описанную там, этот тест может помочь определить наилучшее соответствие в каждом конкретном случае.

1 голос
/ 11 июня 2009

я не слишком много знаю о Scala и Lift ... если вы хотите придерживаться ruby, посмотрите merb ... кажется, что в любом случае он будет объединен с RoR, так что вы можете может просто дождаться следующей версии ...:)

вы можете взглянуть на Haxe (язык высокого уровня, предназначенный для многих платформ, таких как AVM1, AVM2, PHP, c ++ и т. Д.) И neko (a серверная виртуальная машина доступна в качестве цели компилятора для Haxe), а также для удаленного взаимодействия Haxe (вы можете просто скомпилировать сетевой код Haxe в swc и придерживаться AS3 / mxml для остальных) ... neko масштабируется довольно хорошо ... это очень легкий и расширяемый ... есть много способов использовать его в качестве серверной платформы, но он также позволяет писать все с нуля, поскольку API предоставляет доступ низкого уровня ...

1012 * редактировать *: вам лучше использовать mod_tora , так как он занимает меньше места ... для других упомянутых вещей просто проверьте список рассылки ... есть слой "базы данных простых постоянных объектов", который может помочь. .. также есть какая-то "полная база данных персистентных объектов", плавающая вокруг ... и для маршрутизации, есть также несколько решений ... не забудьте проверить haxelib ... вы можете найти довольно там много материала многоразового использования ...

0 голосов
/ 11 июня 2009

Я бы порекомендовал использовать lighttpd для показа вашего статического контента. Ожидается ли, что ваше приложение AIR будет взаимодействовать с сервером, обслуживаемым нами, с использованием других служб, предоставляемых другими сайтами Saas? RoR или Scala или Lift отлично подходят, если вы хотите сохранить свой контроллер (MVC) на сервере. С AIR я не думаю, что вы хотите идти по этому пути, поскольку это увеличивает сложность взаимодействия с контроллером, и вам нужно поддерживать состояние в двух местах.

Если ваша модель взаимодействия клиент-сервер будет просто потреблять REST-сервисы (хотя поддержка REST довольно неудобна во Flex, поэтому вам, вероятно, потребуется написать собственную библиотеку сокетов для поддержки других глаголов REST и для получения доступа к заголовки), тогда ваш сервер станет гораздо менее сложным. Вам нужно иметь дело только с запросом / ответом HTTP-запроса.

Хорошо, так что я бы порекомендовал.

CherryPy для Python Сервлеты / Jetty для Java

Убедитесь, что вы выбрали средний уровень кэширования, например memcached или tokyotyrant (оба поддерживают все среды, упомянутые в моем посте, и другие).

...