День 443 | Разработка социальной сети
Хочу сказать, что я успешно перенес все 13 микросервисов не считая Ml-service и Api-gateway на gRpc. Оч долго собирал это всё в докер образцы, аж по 8 собрал в первый раз во всех 8-и терминалах, своим скриптом который автоматически собирает, отправляет в Registry и сам обновляет под в кубере на сервере
Теперь наша архитектура такова:
api-gateway микросервис это единая точка всех Websocket соединений которое делает обращение к другим gRpc микросервисам
Микросервисы по типу chat-service или message-service, для отправки сообщений всем в чате или в целом кому либо в ответ, используется Nats Pub/Sub.
Сейчас я занимаюсь рефакторингом всех actions сторов на клиентской части, я должен заменить все HTTP функции mobxSaiFetch из моей библиотеки mobx-toolbox, на mobxSaiWs и далеко не только это
Я сделал очень крутую архитектуру на мобилке:
1. Я создал WebsocketRoutesStore мобикс стор, в котором хранится массив с типами ответов от вебсокета, например мы используем функцию registerRoute отдавая туда какой нибудь { type: "auth-login", success: ..., error: ... } так-же можно и массивом, в success мы прокидываем функцию при успешном получении данных, а в error получаем саму ошибку в случае неуспешного запроса
2. Создал WebsocketApiStore в котором инициализировал сам основной вебсокет при помощи другого очень большого класса WebsocketStore который создает нужные функции, методы и состояния для удобного использования любого вебсокета, там реализованы системы автоматического heartBeat, Reconnection, обмена ключами и куча других опций которые можно еще и включать или выключать благодаря настройкам при инициализации класса
Так-же, на бэкенде я хочу перейти на ScyllaDb в chat-service и message-service. Так как это лучший вариант для таких больших и быстрых данных. Сообщений много, а postgres слишком большеват для этого применения.
Всем удачи и спокойной ночи😐 😜
Хочу сказать, что я успешно перенес все 13 микросервисов не считая Ml-service и Api-gateway на gRpc. Оч долго собирал это всё в докер образцы, аж по 8 собрал в первый раз во всех 8-и терминалах, своим скриптом который автоматически собирает, отправляет в Registry и сам обновляет под в кубере на сервере
Теперь наша архитектура такова:
api-gateway микросервис это единая точка всех Websocket соединений которое делает обращение к другим gRpc микросервисам
Микросервисы по типу chat-service или message-service, для отправки сообщений всем в чате или в целом кому либо в ответ, используется Nats Pub/Sub.
Сейчас я занимаюсь рефакторингом всех actions сторов на клиентской части, я должен заменить все HTTP функции mobxSaiFetch из моей библиотеки mobx-toolbox, на mobxSaiWs и далеко не только это
Я сделал очень крутую архитектуру на мобилке:
1. Я создал WebsocketRoutesStore мобикс стор, в котором хранится массив с типами ответов от вебсокета, например мы используем функцию registerRoute отдавая туда какой нибудь { type: "auth-login", success: ..., error: ... } так-же можно и массивом, в success мы прокидываем функцию при успешном получении данных, а в error получаем саму ошибку в случае неуспешного запроса
2. Создал WebsocketApiStore в котором инициализировал сам основной вебсокет при помощи другого очень большого класса WebsocketStore который создает нужные функции, методы и состояния для удобного использования любого вебсокета, там реализованы системы автоматического heartBeat, Reconnection, обмена ключами и куча других опций которые можно еще и включать или выключать благодаря настройкам при инициализации класса
Так-же, на бэкенде я хочу перейти на ScyllaDb в chat-service и message-service. Так как это лучший вариант для таких больших и быстрых данных. Сообщений много, а postgres слишком большеват для этого применения.
Всем удачи и спокойной ночи
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14❤🔥5🔥3👌1
Нью лого, кстати скоро выйдет пост о том как я переписал все запросы в chat-service и message-service с Postgresql на ScyllaDb, почему я это сделал, что это даёт и так далее. Инфа о том какие методы в chat-service я добавил, и какие собираюсь в message-service. А так-же новости о новых фичах приложениях ;)
Оставайтесь на связи😐 😜 🚀
Оставайтесь на связи
Please open Telegram to view this post
VIEW IN TELEGRAM
❤19❤🔥5🔥2💔1 1