Технология push

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Технология Push»)
Перейти к навигации Перейти к поиску

Технология push (англ. push, дословно — «проталкивание») — один из способов распространения информации (контента) в Интернете, когда данные поступают от поставщика к пользователю на основе установленных параметров. Пользователь же, в свою очередь, либо отвергает, либо принимает данные.

Обычный пользователь может подписаться на различные темы, информацию от сервис-провайдера, и каждый раз, когда новое обновление формируется на сервере, это обновление доставляется на компьютер пользователя. Противоположностью Push-технологии является технология Pull, где запрос инициирует клиентское программное обеспечение.

Push-технологии приобрели известность благодаря продукту PointCast, популярному в 1990-е годы. Сеть PointCast занималась доставкой новостей и данных фондового рынка, содержала агрегатор с собственным форматом, отдалённо напоминавшим телевидение, с текстом и рисунками, вместо видео. Влияние СМИ было значительным, так что Netscape и Microsoft в разгар браузерной войны решили включить эту технологию в свои браузеры Netscape Navigator и Internet Explorer соответственно. Однако в большинстве случаев пользователи имели низкую скорость подключения, поэтому популярность сервиса была низкой, а позже сошла на нет, вытесненная pull-технологией RSS в начале 2000-х годов.

Принцип работы для современных ОС[править | править код]

Для работы push-уведомлений используется четыре компонента[1]:

  1. Сервер push-уведомлений (у каждой современной ОС есть свой сервер, у iOS это APNS[2], у Android — FCM (Firebase Cloud Messaging)[3], у Windows 10/Windows 10 Mobile — WNS[4]).
  2. Сервер автора приложения, который посылает уведомления серверу push-уведомлений.
  3. Постоянно работающая служба в операционной системе устройства, общающаяся с сервером push-уведомлений.
  4. Приложение, поддерживающее push-уведомления.

Предварительно разработчик приложения регистрирует свой сервер на сервере уведомлений ОС.

После того как пользователь даёт разрешение приложению на получение уведомлений, приложение отправляет уникальный ID приложения и уникальный номер устройства на сервер уведомлений и регистрируется на этом сервере. Эти два уникальных номера образуют уникальный идентификатор. Затем этот идентификатор отправляется с сервера уведомлений на сервер владельца приложения.

Когда сервер автора приложения должен будет отправить уведомления клиентам, он формирует само сообщение и список (может состоять из одного) уникальных идентификаторов и отправляет эти данные с помощью специального API на сервер уведомлений. Сервер уведомлений пересылает эти сообщения клиентам. Клиенты вправе как отбросить, так и принять эти данные.

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

Применение[править | править код]

Самое известное использование Push — рассылка сообщений по подписке, например, информационных бюллетеней, доставляемых по электронной почте. Подобная система используется в судах в США, которые отправляют на электронную почту подписчиков требуемую информацию о процессах.

Типичными примерами push-сервисов являются

Push-запросы могут быть смоделированы и с помощью регулярных pull-запросов, как это происходит, например, при извлечении сообщений электронной почты с сервера POP3, когда почтовый клиент делает запросы каждые несколько минут.

Также такие системы, как Kazaa, которая включает в себя Push-технологию файлов дольщиков, где есть возможность выбрать любой контент-сервер, который будет подключён.

Другие виды использования push-технологии включают в себя веб-приложения, в том числе распространения данных рынка (котировки акций), аукционы, мониторинг сетевых датчиков.

Также существуют специальные сайты, позволяющие автоматизировать процесс отправки push-уведомлений.

См. также[править | править код]

Примечания[править | править код]

  1. Push Notifications Explained | Urban Airship (англ.). Urban Airship. Проверено 20 февраля 2016.
  2. Apple Push Notification Service. developer.apple.com. Проверено 20 февраля 2016.
  3. Firebase Cloud Messaging (англ.). Google Developers. Проверено 18 августа 2016.
  4. Cloud Messaging  |  Google Developers (англ.). Google Developers. Проверено 20 февраля 2016.

Ссылки[править | править код]