Наиболее подходящее промежуточное программное обеспечение, ориентированное на сообщения, для кросс-языковой клиент-серверной карточной игры? - PullRequest
0 голосов
/ 19 марта 2012

Я собираюсь написать карточную игру клиент / сервер для обучения / практических целей и собираюсь использовать Java как для клиента, так и для сервера с самого начала.В будущем я буду продолжать использовать этот проект для обучения и, следовательно, захочу написать дополнительные клиенты на других языках, таких как C и C ++.

Основная деталь, в которой я не уверен, заключается в том, нужно ли мне использовать MOM с брокером сообщений, или я могу уйти, не используя его.

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

Однако вместо того, чтобы просто иметь игровой клиент и игровой сервер, я думал о том, чтобы иметь клиент, лобби-сервер и игровой сервер.Таким образом, мне понадобится брокер сообщений для маршрутизации правильных сообщений на правильный сервер, однако я не уверен, есть ли у меня необходимость в брокере сообщений, поскольку я не уверен, действительно ли мне нужно какое-либо средство дляпостоянство сообщений.

Я склоняюсь к переходу на MOM с брокером сообщений, но я бы приветствовал более легкие решения, если я делаю это без необходимости.Тем не менее, если бы я сделал то, что было бы подходящей кросс-языковой мамой для использования?Я уже видел несколько предложений по SO, но я не уверен, что лучше всего отвечает моим потребностям.

1 Ответ

1 голос
/ 19 марта 2012

Для мультиязычного MOM - я предлагаю вам использовать Apache ActiveMQ.Он соответствует спецификации JMS, а также имеет надежную клиентскую библиотеку C ++.Это открытый исходный код (лицензия Apache)

Да, другой легкий вариант, который вы можете изучить, - это HTTP.особеннодля связи клиента с сервером.(Поскольку клиентам может понадобиться подключиться к серверу через брандмауэры и т. Д. - порт HTTP проще всего получить и т. Д.).

Для лобби-сервера - игрового сервера - мне нравится твое представление о MOM.

...