![]() |
Холивар: http против сокетов
Собственно нужен холивар на тему использовать/не использовать сокеты в MMORPG.
Я опишу плюсы и минусы как они мне видятся. МИНУСЫ 1) Считаем что в игры играет в основном офисный планктон, которым злые админы отрубают все порты кроме 80. Соответственно играть они не смогут. Методы обхода? Прокси? JavaScript? 2) Нагрузка на сервер. Многие серверные прогеры говорят, что держать сокеты повышает нагрузку на сервер. Эту тему тоже хочется пообсуждать:имеем 500 коннектов для перемещений игроков по карте. каждый игрок получает НОВУЮ инфу о видимых объектах. Формат одинаковый, что по сокету, что запросами, но запросы пингуются раз в 2 секунды. Где нагрузка больше? держать коннект или раз в 2 секунды отсылать http запрос апачем? ПЛЮСЫ: -плюсов гораздо больше, чем минусов, описывать их не буду, так-как в основном волнуют минусы.)) Жду холивара.:yahoo: |
1) HTTP-прокси;
2) Держать коннект. Холиварить не собираюсь, под MMORPG, особенно realtime, сокет обязателен. |
Цитата:
Можно подробнее о прокси? |
мдя ... если Вы нашли программистов, которые считают, что несколько рас в секунду открывать и закрыть конекты, быстрее чем держать один открытый, то скажите, что бы их уволили.
|
По моим экспериментам, уже по локальной сети 3 http-запроса в секунду было предельной скоростью работы. Для многопользовательской игры - только бинарный сокет или rtmp-соединение
|
Для решения первого вопроса случайно нашел такой вот замечательный класс:
Код AS3:
PS: описание механизма туннелирования |
Смотри, как бы принцип простой: ХТТП - это точно такой же сокет (сорри за кривую терминологию). Вобщем, ХТТП сервер это тот же сокет, только уже наученый получать и отправлять информацию отформатированую определенным образом. При этом, если самой информации не много, то дополнительной информации нужной для ее форматирования может оказаться в разы больше чем полезной. Точно так же, например, если ты попробуешь положить текстовый файл из одной буквы в зип-архив, то ты проиграешь в объеме файла в несколько десятков раз (т.е. зип-файл будет гораздо больше текстового) :)
|
Цитата:
Добавлено через 4 часа 23 минуты Цитата:
|
Ну если вы так хорошо разбираетесь - чего спрашиваете? :) Или холивар это объязательно значит не разбираясь в поставленом вопросе хамить собеседнику?
|
Уважаемый , никаким образом не хотел Вас обидеть, просто Ваш текст (очень полезный для понимания основ передачи пакетов данных) - не относится к вопросам, поднятым в этом топике.
Добавлено через 10 минут Цитата:
На самом деле они боятся новшеств и никак работать не хотят. ведь есть FLAP, есть RED5 итд... а Им сцыкотно... типа вот ведь работала игра 4 года по хттп без флэша и хорошо.. |
бугага. с очень страшными словами ( FLAP, RED5 ) я бы тоже не хотел работать :)
|
Слушай,хорош матерится,оборзел совсем.
|
Цитата:
И да, товарищ Котяра, если вы не прекратите слать куда-подальше тех, кто по вашему отвечает не по теме в разделе флейма, то я приму меры. |
Извините. Был неправ. Накипело.
Добавлено через 7 минут Цитата:
Добавлено через 15 минут Цитата:
|
Котяра, госпади ...
все "реализации" всегда имеют "исходный код". да где Вы это берёте эти названия? Вы посещали шоу уродцев? успешные реализации, Вам никто не даст никогда за бесплатно. за бесплатно Вам дадут более менее стабильный альтруизм, который Вы напильником под свои нужды будите пилить дольше, чем написать тоже самое с нуля. а за те деньги, за которые продаются успешные реализации, Вам их покупать точно не захочется %) и объясните мне ... у меня складывается впечатление, что Вы слабо себе представляете о чём говорите. Вы приводите примеры серверов, у которых абсолютно разный функционал, и предназначены для разных целей, но их сокетность составляется 5% от их самих. Вы считаете, что написать сокетный сервер с нуля, это очень сложно? |
SFS через 80 начинает работать, если остальные порт(ы) закрыты
|
2Котяра:
ну привели вы пример тунеллирования и что? В хорошем офисе, где открыта только ася, скайп и правильно настроенный http-прокси все эти извращения никак не помогут. А там где помогут - вы будите сами приходить настраивать или выложите талмуд по настройке? Хорошая пошагавая игра должна поддерживать и сокет-соединение и http-запросы через прокси. Так, как это сделано в таймзеро, например. Для интернет-казино - HTTP-запросы - лучший выбор. Для реалтайма - только сокет-клиент и сервер. Впрочем и некоторые пошаговые игрушки забивают на тех, у кого закрыты порты, Dofus, например. Для большой игрушки надо писать свой сокет-сервер. На чем нибудь быстром. cpp, например. Естественно, поглядев, что там у других, чтобы изобретать велосипед. Только в elektroserver глядеть не надо =) 2BloodHound: флап - это что за зверь? вот это что ли http://www.simonf.com/flap/? Последнее обновление 2004? А ред5 растет по-немногу. Для вещания видео и мелких игрушек его вполне можно юзать. 2тер: Цитата:
|
iflamberg, а чего Вы у меня спрашиваете? мне гугл самому, чего только не вывел. спросите, у котяры %)
|
Цитата:
вот в это м классе есть функция: Код AS3:
Описание как это происходит в моей ссылке. Примерчик работы скоро выложу. Добавлено через 2 минуты Цитата:
|
ну выкладывайте примерчик =)
|
Цитата:
Я так не считаю, так считают наши прогеры. начинают кричать про то нужно учеть обработку ошибок, сериализацию и.т.п. я иx посылаю посмотреть на работающий код. Я никого не заставляю использовать ред5 или (боже упаси) флап. |
я понял, что Вы имели ввиду. просто у меня проблемы с адекватной реакцией на всякого рода двусмыслицы.
какова Ваша цель, при выкладывании в качестве примеров данных "чудо реализаций"? Ваши чудо-программеры просто ленивы. то, что Вам сказали, учитывать необходимо в любом случаи :) совершенно независимо от способа конекта. |
а я юзаю SFS+BlueBox.
поэтому мой сервер поддерживает и сокеты и хттп. можете даже сами реализовать такое чудо, если SFS чем то не нравиться. |
Цитата:
Кстати никто не в курсе, будет ли эта библиотека включена в плеер когда нибудь? Очень там классы нужные. |
| Часовой пояс GMT +4, время: 18:54. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.