214 похожих чатов

Подскажите пожалуйста. Как лучше запилить коммуникацию серверов? Пытаюсь запилить сервис для

авторизации (+администрирования) в игру через "главное API". Но игровых серверов может быть от 2х до n.

Цель: главное API передаёт (например) название метода и аргументы на "gameserver" и там уже происходит отработка и ответ (успех+данные/нет)
Иногда нужно и в обратную сторону также передать данные.

Уже как-то пилил такую реализацию RPC с MassTransit (RabbitMQ), но настройка сервера, очередей, как-то очень муторно. Или это правильный вариант?

Просто особо не вникал в gRPC и не вникал как у людей сервера общаются

5 ответов

18 просмотров
Sed- Автор вопроса

Илья в своё время классно подсказывал. Куда он пропал? Или тут уже давно все чисто на лайтах сидят?

Sed
Илья в своё время классно подсказывал. Куда он про...

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

Sed- Автор вопроса
Aniki Hi$ok@ 🌈 Z 🐀
может нет в онлайне щас, да и конечно на лайте, ес...

Вопрос достаточно конкретный и вообще не касается геймдева, подробности только для ясности взаимодействия. Вопрос прост: как микросервисам/серверам общаться между собой, когда они на разных серверах. Только оптимальный вариант под ситуацию, а не тупо "REST ебаш" "Не вникал" я только в gRPC, это один из МНОЖЕСТВА вариантов которые я не могу знать или найти. Потому сюда и задал вопрос.

Можно сделать чтоб клиент просто делал запрос на мейн инстанс, потом отсылал ответ на нужный сервер, потом клиент у человека отрисовывает что получил. Кролик врядли тут подойдёт, тем более если захочешь дальше масштабироваться. Также Кафка была бы лучше из соображений оптимизации затрачиваемых ресурсов и из-за того что у тебя будет (я полагаю) много евент емитеров которые будут стримом что-то отсылать Grpc отличный транспорт тут, можешь ещё посмотреть в сторону протобафа Делать общение чисто на ресте это тупик мне кажется, ты просто упрешься в ограничения реста

Sed- Автор вопроса
єєає)
Можно сделать чтоб клиент просто делал запрос на м...

Посидел, обдумал несколько раз: 1. Можно на обоих сторонах реализовать REST тупо на http c фильтом ip откуда прилетает запрос. 2. Почему? В основном этом синхронные запросы: [mainAPI | получить список подробный персонажей игрока: id,наказания,деньги,предметы]->[gameServer | где будет описан метод работы с БД этого игрового сервера]. Такие же запросы могут быть - выдать деньги, кикнуть игрока и т.п. 3. Кафку можно позже реализовывать, если нужно будет постоянно получать логи с серверов или что-то в этом роде. (много информации) 4. REST запросов думаю не больше 10к одновременно может быть от пользователей: авторизация, регистрация, получения списка файлов, получения ссылок для скачивания файлов, получения списка персонажей, выход. Между серверами только: получить токен для входа в игру + команды для администраторов (манипуляции с персонажами игроков) нормальный же подход?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта