Должен ли я написать свой собственный flash-сервер на Erlang или использовать Red5?

Я студент, собирающийся начать свой экзаменационный проект, где я буду отвечать за реализацию серверной онлайн-игры, ориентированной на флэш-плеер. Мне трудно решить, стоит ли мне писать свой собственный легкий сервер на Erlang или использовать Red5 с открытым исходным кодом.

Мой опыт показывает, что java-разработчики, как правило, слишком усложняют ситуацию, затрудняя работу с API, верно ли это для Red5? И как это работает под большой нагрузкой, которая идет с синхронизацией игры?

Может быть, с моим собственным сервером Erlang будет легче работать и распространяться на нескольких машинах?

Итак, вопрос в том, должен ли я написать свой собственный флеш-сервер Erlang или использовать существующий Red5?

Изменить: я думаю, что мне нужно решить, каковы мои цели: просто настроить онлайн-игру или узнать, как реализовать многопользовательский сервер с нуля.

4 ответа

Решение

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

Однако, если вы хотите программировать на эрланге и думаете, что вам будет весело развить свой собственный сервер, во что бы то ни стало сделайте это!

Это также зависит от цели вашего проекта - должны ли вы продемонстрировать, что можете запустить онлайн-игру (перейдите на Red5), или вам нужно продемонстрировать, что вы можете программировать распределенный многопользовательский игровой сервер? (зайдите на свой собственный проект в Erlang)

Кстати: я использую http://www.smartfoxserver.com/ для одного из моих текущих проектов

Я думаю, вам нужно оценить для себя усилия по внедрению собственного, легковесного сервера. Часто собственные требования невелики и специфичны, и реализация сервера, отвечающего им, - это путь.

Также проверьте Blaze DS (сервер флэш-памяти Java) и Juggernaut (сервер флэш-памяти ruby). Я думаю, что, возможно, Джаггернаут предназначен для определенных целей, помимо вашего, но я не уверен.

Зачем изобретать велосипед? Один только AMF - это сложный зверь для реализации, просто взгляните на документы для базовых вещей, таких как целочисленное кодирование... Если вам не нужны возможности потоковой передачи и AMF - это все, что вам нужно, вы также можете использовать PyAMF (Python) или AMFPHP. Кроме того, вы, вероятно, будете оцениваться тем, как вы играете в конце, а не тем, насколько умно вы повторно внедрили AMF.

Если вы зайдете на http://www.stripclubcity.com/ или, в частности, на http://www.stripclubcity.com/new-jersey-strip-clubs они используют Red5 для потоковой передачи своих камер. Мне кажется, я прочитал, что использовать Red5 намного проще, чем писать свой собственный AMF... Зачем изобретать велосипед?

Другие вопросы по тегам