
24.04.2010, 11:56
|
|
Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
|
"Зоопарк" на сервере - насколько это криминально?
Допустим, есть на 90% готовое приложение, и при начале работы над приложением никаких online-действий не планировалось. Поэтому сервер собран на связке php/memcache/mysql, обмен реализован по http, сервер отдает xml. Все более-менее работает и объективной потребности в переходе на сервер другой архитектуры нет.
Неожиданно в игру вводится новый функционал, а именно - пользователь, находясь в своей локации, может производить некоторые действия в отношении другого пользователя, которые тут же должны отражаться в его локации. Например, он выпускает в локацию второго пользователя "бандитов", которые там грабят ресурсы.
Требует решения ситуация, когда второй пользователь находится в игре. Можно заставить клиента лазить на сервер по таймауту (но с маленьким таймаутом имеем большую дополнительную нагрузку на сервер, а с большим - теряем online), а можно запустить "маленький сокет-сервер" на java , единственное назначение которого будет в том, чтобы "дернуть" клиента, чтобы тот, в свою очередь залез на сервер и обновил свои данные.
Кто-нибудь так делает?
|