Почему приложения корпоративного чата не строятся на серверной базе данных, такой как Hangouts, Slack и Hipchat?
Одним из наиболее важных инструментов для любой организации, позволяющих сгладить мир совместной работы, является только приложение для чата в реальном времени, независимо от того, происходит ли разговор на мобильном или настольном компьютере. Hangouts, Slack и Hipchat помогают компаниям наладить достойную беседу между их внутренними сотрудниками и клиентами, от небольших до крупных предприятий.
Эти крупные игроки вступают в игру там, где требуется командное сотрудничество. Крупные игроки строятся на базе данных на стороне сервера, где сообщения, передаваемые с одного устройства на другое, хранятся в их базе данных сервера. В конечном итоге это приводит к хранению огромного количества данных в базе данных на стороне сервера (облачной базе данных).
Потребление облачного хранилища будет довольно высоким. База данных на стороне клиента более эффективна, если ретранслируемые сообщения хранятся на клиентском устройстве. Сообщения будут поставлены в очередь, чтобы свести к минимуму потребление данных на сервере.
Чтобы сделать его более интересным, давайте кратко рассмотрим функциональность чата в базе данных на стороне сервера и базе данных на стороне клиента.
Функциональность чата
База данных на стороне сервера
- Один токен-ключ используется для передачи сообщений от клиента к серверу.
- Скрипт работает на сервере, а не на клиентском сервере.
База данных на стороне клиента
- Передача сообщений от сервера к клиенту осуществляется с помощью токен-ключей доступа.
- Клиент-сервер отправляет запрос на несколько серверов для доступа к сообщению с помощью ключа токена, доступного на стороне клиента.
Как уже говорилось, в приложении для группового чата количество сообщений, передаваемых между сервером и клиентом, велико, очереди сообщений будут одной из самых разрушительных проблем. Для обработки очереди сообщений на серверах были введены MUC и PubSup для обработки многопользовательского обмена сообщениями. MUC (многопользовательский чат) Протокол XMPP, предназначенный для одновременного общения нескольких пользователей, и PubSup для отправки сообщений отправителями напрямую получателям.
MirrorFly, корпоративное решение для обмена сообщениями, использует самые универсальные серверы PubSup и компонент MUC для управления одновременными пользователями в групповом чате, канале или даже сообществе.
Давайте посмотрим, как MirrorFly использует серверы для обработки параллельной пользовательской базы на сервере чата в реальном времени, который включает в себя групповые, канальные и общественные чаты.
Как MirrorFly использует серверы MUC и PubSup для обработки миллионов сообщений одновременно?
Опираясь на серверы MUC и PubSup, компонент MUC полностью контролирует доступность и администрирование для более чем 1000 пользователей в групповом и чате сообщества.
Он предоставляет пользователям сообщества групповой чат для создания любого количества каналов, где одновременная база пользователей не превышает 1000 пользователей.
Что касается стандарта безопасности, компонент MUC обеспечивает максимальную защиту от утечки данных, когда лимит базы пользователей составляет менее 1 лакха.
Компонент MUC теряет свой потенциал, когда пользовательская база превышает 1 лакх, когда все группы чата превращаются в открытое сообщество из режима только по приглашению.
Если пользовательская база превышает 1 лакх, Инфраструктура MirrorFly гарантирует использование сервера PubSup в инфраструктуре чата в реальном времени, чтобы полагаться на сообщения с сервера MirrorFly на клиентский сервер.
PubSup хранит данные (сообщения) на клиентском сервере (клиентское устройство, например, мобильное или настольное), доступ к которому возможен только с помощью ключа токена клиента. Эта операция выполняется, когда устройство пользователя находится в автономном режиме.
Таким образом, контент (сообщения), хранящийся на клиент-сервере, защищен от любого несанкционированного доступа через токен-ключ.
Нижняя линия
Инфраструктура чата в каждом веб-приложении и мобильном приложении разрабатывается на разных серверах в зависимости от потребностей приложения. Выбор инфраструктуры чата на стороне клиента (локальный хостинг), а не приложения чата на облачном сервере, более эффективен в защите и обработке сообщений, когда пользовательская база пересекает сотни тысяч человек. Таким образом, спрос на локальный хостинг приложения чата имеет свою ценность для предприятий и компаний, которые хотят создать или интегрировать платформу для совместной работы (чат) в свои веб-приложения или мобильные приложения для обработки более миллиона разговоров.