Re: как я бы стал писать такое приложение...oleg_buninDecember 23 2006, 02:19:36 UTC
Не полетит. Даже если не придираться к Java и попытке скрестить ее с Perl и C++.
Как происходит адресация сообщений в JMS? Разбить по модулям мало. Например, одновременно проходит 100 боев, всего игроков в системе - 10 тысяч. Это означает, что количество сообщений, передаваемых в такой системе - несколько тысяч в секунду. А ведь их надо еще обработать и оповестить всех заинтересованных лиц о результатах обработки (еще несколько тысяч). Без четкого разделения кому направлено это сообщение не обойтись. Его должен получить один получатель.
Реализация чата? Тоже на JMS - тогда нужно добавить еще несколько тысяч писем в секунду.
Но в любом случае аналогия прослеживается, вместо CORBA Вы предлагаете использовать JCache+JMS+JMX. Функционал этой связки точно такой же.
Re: как я бы стал писать такое приложение...oleg_buninDecember 23 2006, 03:08:27 UTC
Какая у Вас задача, можешь описать архитектуру приложения и задачи, которые оно решает?
Подсчет количества сообщений неверен. Один ход это не одна задача, а множество. В бою участвует в среднем большее количество людей. Задачи проверки статуса происходят несколько раз в минуту. Ну и, наконец, результаты надо раздать.
Возможно, результаты можно раздать с помощью JCache - это нечто вроде shared-памяти между десятком машин огромной емкости, я правильно понимаю?
PS: Про чат ты не прав, чат на 10 тысяч человек нельзя сделать на БД.
Re: как я бы стал писать такое приложение...ymikDecember 23 2006, 12:10:56 UTC
ИНФОН - это крупнейший контент-провайдер и агрегатор СМС услуг в России, Украине, Казакхстане, Беларуссии, Киргизии, Армении. Кроме того, являясь частью МонстерМоба работаем так же по всему миру - США, Англия, Германия, тихоокенаский регион, Израиль, Китай. У Монстермоба,фактически, два технологических (железячных) центра - в Китае и в России. В США тоже есть, но там не СРВ
( ... )
Re: как я бы стал писать такое приложение...ymikDecember 24 2006, 01:09:39 UTC
обычо ответ должен быть в течении 5 минут. среднее время жизни пакета (со всеми статусами доставки) в нормальном режиме (без перегрузки системы, с одним ответом, со всеми статусами доставки) 20-40 секунд.
Re: как я бы стал писать такое приложение...oleg_buninDecember 24 2006, 04:10:50 UTC
А я сказал - на два порядка, то есть 0.2-0.4 секунды.
Я не думаю, что игра, в которой задержки в несколько секунд от действия до результата будет конкурентноспособной.
Примечательно, что Вы начали убеждать меня в том, что задержки - это нормально, а не рассказали о том, что на описанных Java-технологиях можно реализовать быстрый код. То есть обмен информацией между сотней абонентов с максимальным временным ограничением в одну секунду невозможен на JMS?
Re: как я бы стал писать такое приложение...ymikDecember 24 2006, 10:21:16 UTC
"Я не думаю, что игра, в которой задержки в несколько секунд от действия до результата будет конкурентноспособной."
цивилизацию помните?))) вы РТС делаете, аркаду, шутер или что-то иное?
да при прстой отправке сообщения в чат при плохом сондинении между самою отправкой и появлением сообщения на экране может пройти до 5 секуд! -------------------
"Вы начали убеждать меня в том, что задержки - это нормально" будте внимательны - я описывал задержки нашей системы, которая заточена под определённый набор действий (например на запись и хранение биллинговой статистики
( ... )
Единственное - от XML-based протокола надо сразу же уходить, счастья от него не будет - но Mule, помнится, это уже умеет.
Подробнее сейчас не расскажу - только-только начал копаться в этой части. Но описание вашей проблемы подозрительно похоже на то, что ESB должно решать.
(и в качестве шага в сторону - посмотрите на Tuple Spaces, http://c2.com/cgi/wiki?TupleSpace - там есть не только java-реализации, так что есть шансы поиспользовать готовый код)
Здесь подробно о технологиях, которые мы используем для потобных аппликух в реальной жизни...
Reply
Даже если не придираться к Java и попытке скрестить ее с Perl и C++.
Как происходит адресация сообщений в JMS? Разбить по модулям мало. Например, одновременно проходит 100 боев, всего игроков в системе - 10 тысяч. Это означает, что количество сообщений, передаваемых в такой системе - несколько тысяч в секунду. А ведь их надо еще обработать и оповестить всех заинтересованных лиц о результатах обработки (еще несколько тысяч). Без четкого разделения кому направлено это сообщение не обойтись. Его должен получить один получатель.
Реализация чата? Тоже на JMS - тогда нужно добавить еще несколько тысяч писем в секунду.
Но в любом случае аналогия прослеживается, вместо CORBA Вы предлагаете использовать JCache+JMS+JMX. Функционал этой связки точно такой же.
Reply
Reply
Подсчет количества сообщений неверен. Один ход это не одна задача, а множество. В бою участвует в среднем большее количество людей. Задачи проверки статуса происходят несколько раз в минуту. Ну и, наконец, результаты надо раздать.
Возможно, результаты можно раздать с помощью JCache - это нечто вроде shared-памяти между десятком машин огромной емкости, я правильно понимаю?
PS: Про чат ты не прав, чат на 10 тысяч человек нельзя сделать на БД.
Reply
Reply
Сколько секунд?
Reply
Reply
У нас ответ должен быть получен за время на два порядка меньше. Секунда будет катастрофой.
Reply
Reply
Я не думаю, что игра, в которой задержки в несколько секунд от действия до результата будет конкурентноспособной.
Примечательно, что Вы начали убеждать меня в том, что задержки - это нормально, а не рассказали о том, что на описанных Java-технологиях можно реализовать быстрый код. То есть обмен информацией между сотней абонентов с максимальным временным ограничением в одну секунду невозможен на JMS?
Reply
цивилизацию помните?))) вы РТС делаете, аркаду, шутер или что-то иное?
да при прстой отправке сообщения в чат при плохом сондинении между самою отправкой и появлением сообщения на экране может пройти до 5 секуд!
-------------------
"Вы начали убеждать меня в том, что задержки - это нормально"
будте внимательны - я описывал задержки нашей системы, которая заточена под определённый набор действий (например на запись и хранение биллинговой статистики ( ... )
Reply
Reply
Reply
Reply
http://mule.mulesource.org/wiki/display/MULE/Home
Единственное - от XML-based протокола надо сразу же уходить, счастья от него не будет - но Mule, помнится, это уже умеет.
Подробнее сейчас не расскажу - только-только начал копаться в этой части. Но описание вашей проблемы подозрительно похоже на то, что ESB должно решать.
(и в качестве шага в сторону - посмотрите на Tuple Spaces, http://c2.com/cgi/wiki?TupleSpace - там есть не только java-реализации, так что есть шансы поиспользовать готовый код)
Reply
А на каких именно задачах так критично по скорости выходит?
Reply
Leave a comment