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

Всем привет. Извиняюсь за оффтоп. Есть websocket-сервис. Клиенты подключаются, а

сервис хранит ws-соединения в мапе под мьютексом и проверяет соединение с клиентом с помощью ping/pong с определенным интервалом. Возникла необходимость поднять несколько инстансов таких сервисов и тут возникает проблема, что у каждого свое состояние, необходимо поднять инстансы так, чтобы для клиентов это осталось неизменным. Как быть, куда смотреть, что посоветуете? Слышал про центрифугу, но можно ли ее вкрутить так, чтобы клиенты этого не почувствовали?

6 ответов

23 просмотра

Здесь про это написано https://habr.com/ru/company/oleg-bunin/blog/522744/ Интересная статья

Mansur- Автор вопроса
Anton Silischev
Здесь про это написано https://habr.com/ru/company...

Если я правильно понял, то в статье предполагается, что клиенты (мобилки и веб) подписываются напрямую на центрифугу. Верно ли я понял, что в моем кейсе будет адекватно, если N-ое кол-во экземпляров моих сервисов при создании websocket-соединения с клиентом будут подписываться на нужный топик центрифуги и будут также играть в ping/pong с клиентом и в случае, если клиент отвалился будут отписываться от топика?

Mansur
кто с centrifugo работал?

Можете прямо автора тегать, он тут отвечает

Mansur
кто с centrifugo работал?

Там папочка с примерами есть. А, будет время, рассмотри вариант с gRPC, ты же чатик ваяешь?

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта