Технология push
Технология push (англ. push букв. «проталкивание») — один из способов распространения информации (контента) в Интернете, когда данные поступают от поставщика к пользователю на основе установленных параметров. Пользователь же, в свою очередь, либо отвергает, либо принимает данные.
Обычный пользователь может подписаться на различные темы, информацию от сервис-провайдера, и, когда обновление сформировано на сервере, оно (или сообщение об этом) доставляется на компьютер пользователя. Противоположностью push-технологии является технология pull, где запрос инициирует клиентское программное обеспечение.
Push-технологии приобрели известность благодаря продукту PointCast, популярному в 1990-е годы. Сеть PointCast занималась доставкой новостей и данных фондового рынка, содержала агрегатор с собственным форматом, отдалённо напоминавшим телевидение, с текстом и рисунками вместо видео. Влияние СМИ было значительным, так что Netscape и Microsoft в разгар браузерной войны решили включить эту технологию в свои браузеры Netscape Navigator и Internet Explorer соответственно. Однако в большинстве случаев пользователи имели низкую скорость подключения, поэтому популярность сервиса была низкой, а позже сошла на нет, вытесненная pull-технологией RSS в начале 2000-х годов. Однако, с развитием скоростей, в 2010-х гг. push получили огромную популярность.
Принцип работы для современных ОС
Для работы push-уведомлений используется четыре компонента[1]:
- Сервер push-уведомлений (у каждой современной ОС есть свой сервер, у iOS это APNS[2], у Android — FCM (Firebase Cloud Messaging)[3], у Windows 10/Windows 10 Mobile — WNS[4]).
- Сервер автора приложения, который посылает уведомления серверу push-уведомлений.
- Постоянно работающая служба в операционной системе устройства, общающаяся с сервером push-уведомлений.
- Приложение, поддерживающее push-уведомления.
Предварительно разработчик приложения регистрирует свой сервер на сервере уведомлений ОС.
После того как пользователь даёт разрешение приложению на получение уведомлений, приложение отправляет уникальный ID приложения и уникальный номер устройства на сервер уведомлений и регистрируется на этом сервере. Эти два уникальных номера образуют уникальный идентификатор. Затем этот идентификатор отправляется с сервера уведомлений на сервер владельца приложения.
Когда сервер автора приложения должен будет отправить уведомления клиентам, он формирует само сообщение и список уникальных идентификаторов и отправляет эти данные с помощью специального API на сервер уведомлений. Сервер уведомлений пересылает эти сообщения клиентам. Клиенты вправе как отбросить, так и принять эти данные.
Уведомления могут содержать различные поля, такие как: кнопки ответа, изображение, числовое значение для бейджика приложения, звук и другие.
Применение
Самое известное использование push — рассылка сообщений по подписке, например, информационных бюллетеней, доставляемых по электронной почте. Подобная система используется в судах в США, которые отправляют на электронную почту подписчиков требуемую информацию о процессах.
Типичными примерами push-сервисов являются
- Синхронные конференции и системы обмена мгновенными сообщениями (IRC, XMPP).
- Система информеров (автоматически обновляющийся блок контента от поставщика, устанавливаемый на сайте пользователя).
- SMTP-системы электронной почты также относятся к push-системам.
Push-запросы могут быть смоделированы и с помощью регулярных pull-запросов, как это происходит, например, при извлечении сообщений электронной почты с сервера POP3, когда почтовый клиент делает запросы каждые несколько минут.
Kazaa использовала push-технологию файлов пользователей, в которой можно было выбрать для подключения любой контент-сервер.
Другие виды использования push-технологии включают в себя веб-приложения, в том числе распространения данных рынка (котировки акций), аукционы, мониторинг сетевых датчиков.
Также существуют специальные сайты, позволяющие автоматизировать процесс отправки push-уведомлений.
Push-уведомления широко используются в маркетинговых целях, за что критикуются пользователями[5][6].
См. также
- Тост (информатика)
- Служба Push-уведомлений Apple
- RSS
- IMAP
- Android Cloud to Device Messaging Service (англ.)
Примечания
- ↑ Push Notifications Explained | Urban Airship (англ.). Urban Airship. Дата обращения: 20 февраля 2016. Архивировано 11 марта 2016 года.
- ↑ Apple Push Notification Service . developer.apple.com. Дата обращения: 20 февраля 2016. Архивировано 4 марта 2016 года.
- ↑ Firebase Cloud Messaging (англ.). Google Developers. Дата обращения: 18 августа 2016. Архивировано 20 июля 2016 года.
- ↑ Cloud Messaging | Google Developers (англ.). Google Developers. Дата обращения: 20 февраля 2016. Архивировано 14 июля 2017 года.
- ↑ Stop, Attention Thief! (англ.). IEEE Spectrum (22 мая 2014). Дата обращения: 9 декабря 2021. Архивировано 15 августа 2021 года.
- ↑ Пуши Авито: как сделать самый навязчивый формат не таким раздражающим . Хабр. Дата обращения: 9 декабря 2021. Архивировано 9 декабря 2021 года.
Ссылки
- Push API, W3C Draft
- Технология Web-доставки внедряется в интрасети
- Push-технологии в интернет-банкинге — преимущество или необходимость?
В статье не хватает ссылок на источники (см. также рекомендации по поиску). |