Общие сведения о службе Azure Web PubSub
Служба Azure Web PubSub упрощает создание веб-приложений, где сервер и клиенты должны обмениваться данными в режиме реального времени. Обмен данными в режиме реального времени является основой определенных приложений с учетом времени, которые разработчики создают и поддерживают. Разработчики использовали службу в различных приложениях и отраслях, например в приложениях чата, панели мониторинга в режиме реального времени, многопользовательские игры, онлайн-аукционы, многопользовательские приложения для совместной работы, отслеживание расположения, уведомления и многое другое.
Если использование приложения невелико, разработчики обычно выбирают механизм опроса для обеспечения обмена данными между сервером и клиентами в режиме реального времени. Клиенты отправляют повторяющиеся HTTP-запросы на сервер через интервал времени. Однако разработчики часто сообщают, что в то время как механизм опроса прост в реализации, он страдает от трех важных недостатков.
- Устаревшие данные.
- Несогласованные данные.
- Трата пропускной способности и вычислительных ресурсов.
Эти недостатки являются основными мотивациями, которые позволяют разработчикам искать альтернативы. В этой статье содержатся общие сведения о службе Azure Web PubSub и о том, как разработчики могут использовать ее для быстрой и масштабируемой сборки канала связи в режиме реального времени.
Применение службы Azure Web PubSub
Маркер потоковой передачи в чат-боте с поддержкой ИИ
С недавним всплеском интереса к ИИ Web PubSub стал бесценным инструментом для разработчиков, создающие приложения с поддержкой ИИ для потоковой передачи маркеров. Служба тестируется на масштабирование до десятков миллионов одновременных подключений и обеспечивает ультра-низкую задержку.
Доставка обновлений в режиме реального времени
Любой сценарий приложения, в котором обновления ресурса данных должны быть доставлены другим компонентам в сети, могут воспользоваться преимуществами Azure Web PubSub. Как говорится в названии, служба предоставляет возможности обмена данными между издателем и подписчиками. Издатель — это компонент, который публикует обновления данных. Подписчик — это компонент, который подписывается на обновления данных.
Служба Azure Web PubSub используется в различных отраслях и сценариях приложений, где данные чувствительны к времени. Ниже приведен частичный список распространенных вариантов использования.
Вариант использования | Примеры приложений |
---|---|
Обновление данных с высокой частотой | Многопользовательские игры, голосование в социальных сетях, опрос общественного мнения, онлайн аукцион |
Динамические панели мониторинга и мониторинг | Информационная панель компании, данные финансового рынка, мгновенное обновление продаж, панель лидеров игр, мониторинг Интернета вещей |
Кроссплатформенный чат | Динамическая комната чата, онлайн-поддержка клиентов, помощник по покупкам в режиме реального времени, messenger, in-game chat |
Отслеживание местоположения | Отслеживание активов транспортных средств, отслеживание состояния доставки, обновления состояния транспорта, приложения для градирования поездки |
Приложения для совместной работы с несколькими пользователями | совместное редактирование, совместная доска и приложения для собраний команды |
Кроссплатформенные push-уведомления | Социальные медиа, электронная почта, состояние игры, оповещение о путешествиях |
Интернет вещей и подключенные устройства | Метрики Интернета вещей в режиме реального времени, управление зарядной сетью для электрических транспортных средств, активное концертное взаимодействие |
Автоматизация | Триггер в режиме реального времени из событий вышестоящего потока |
Преимущества службы Azure Web PubSub
Встроенная поддержка крупномасштабных клиентских подключений и высокодоступных архитектур.
Служба Azure Web PubSub предназначена для крупномасштабных приложений в режиме реального времени. С одним ресурсом Web PubSub он может масштабироваться до 1 миллиона одновременных подключений, что достаточно для большинства случаев. При совместном использовании нескольких ресурсов служба позволяет масштабировать более 1 миллиона одновременных подключений. Она также поддерживает несколько глобальных регионов для сегментирования, обеспечения высокой доступности и аварийного восстановления.
Поддержка широкого спектра клиентских пакетов SDK и языков программирования.
Служба Azure Web PubSub работает с широким спектром клиентов. Эти клиенты включают веб-браузеры и мобильные браузеры, классические приложения, мобильные приложения, серверные процессы, устройства Интернета вещей и игровые консоли. Пакеты SDK для серверов и клиентов доступны для основных языков программирования, C#, Java, JavaScript и Python, что упрощает использование API, предлагаемых службой. Так как служба поддерживает стандартный протокол WebSocket, вы можете использовать любые языки программирования, поддерживая REST, для вызова API Web PubSub напрямую, если пакеты SDK недоступны в выбранном языке программирования.
Широкие возможности API для различных схем обмена сообщениями.
Служба Azure Web PubSub предлагает двунаправленное взаимодействие между сервером и клиентами для обмена данными в режиме реального времени. Служба предлагает функции, позволяющие точно контролировать, как следует доставлять сообщение и кому. Ниже приведен список поддерживаемых шаблонов обмена сообщениями.
Шаблон обмена сообщениями | Сведения |
---|---|
Широковещательная передача для всех клиентов | Сервер отправляет обновления данных всем подключенным клиентам. |
Широковещательная передача в подмножество клиентов | Сервер отправляет обновления данных в подмножество клиентов, произвольно определенных вами. |
Трансляция всем клиентам, принадлежащим конкретному пользователю | Пользователь может иметь несколько вкладок браузера или устройства, вы можете транслировать пользователю, чтобы все веб-клиенты, используемые пользователем, синхронизированы. |
Клиентский паб или вложенный | Клиент отправляет сообщения клиентам, которые находятся в группе произвольно, определенной вами без участия сервера. |
Клиенты на сервер | Клиенты отправляют сообщения на сервер с низкой задержкой. |
Использование службы Azure Web PubSub
Есть много разных способов программирования с использованием службы Azure Web PubSub, например:
- Создание бессерверных приложений, работающих в реальном времени. Интегрируйте Функции Azure со службой Azure Web PubSub, чтобы создавать бессерверные приложения, работающие в реальном времени, на таких языках, как JavaScript, C#, Java и Python.
- Используйте подпротокол WebSocket, чтобы сделать только клиентская служба Pub/Sub — служба Azure Web PubSub предоставляет подпротоколы WebSocket, включая MQTT, чтобы предоставить авторизованным клиентам возможность публиковать другие клиенты в удобном режиме.
- Используйте предоставленные пакеты SDK для управления подключениями WebSocket на серверах приложений с самостоятельным размещением — служба Azure Web PubSub предоставляет пакеты SDK на языках C#, JavaScript, Java и Python для простого управления подключениями WebSocket, включая трансляцию сообщений для подключений, добавления подключений к некоторым группам или закрытия подключений и т. д.
- Отправка сообщений с сервера клиентам через REST API. Служба Azure Web PubSub предоставляет REST API, чтобы приложения могли публиковать сообщения в подключенных клиентах на любом языке с поддержкой REST.
Быстрое начало работы
Следующие шаги
Используйте эти ресурсы для начала создания собственного приложения: