Web app syncronizations, Sockets, tricks and hacks

Post on 09-Feb-2017

187 views 9 download

Transcript of Web app syncronizations, Sockets, tricks and hacks

by Egor Malkevich

2016

18+

Докатился до того, что пишу код. Как? Не помню.…

Проблема!?

Наши ожидания

Реальность

По порядку

Зачем вообще нам синхронизация?

С чего все началось?

Называется это signaling

… PubSubHubbub, RSSCloud, Comet, XMPP, MQTT, Adobe LiveCycle, Google

Wave Protocol, WebHooks, WebSockets …

HTTP Streaming

Гипотеза…

Осторожно спойлер

COMET …

Long pooling

WebSockets

Web Sockets

Задача

на правах рекламы http://gendalf.tv

В общем и целом есть

https://github.com/sockjsи

Проблемы с доступом к JoyCasino.com?

Ведите 7, что бы получилось joycasion7.com

Client.js

И вуаля

Запилили

Users want "delightful realtime web apps".

Developers want "delightfully easy to build realtime web apps".

Operations want "delightfully easy to deploy, scale and manage realtime web apps".

Одновременный коннект

WebSockets and HTTP/2 transport are not unified

Так много WebSockets

255 connections 200 connections

1 Dmitry

Proxy servers

`WebSocket connection to 'ws://xxx:nn' failed: Connection closed before receiving a handshake response`

Используете Node.js?

Load balancing WebSockets is complicated

WebSockets give you the illusion of reliability

Why so hard?

Попытки решить проблему в лоб

И

По итогу

Альтернативы

Не использовать свой socket сервер.

платный https://www.pubnub.com/

Не использовать socket сервер вообще

https://goroost.com/

https://sendpulse.com/ru/webpush

https://onesignal.com/

Самое интересное

К примеру можно помочь socket.io

You may be happy with a 30 second delays and be fine with polling.

Можно делать поведенческие запросы

А вообще

Не нравится?

Special for Geeks

В общем случаеСледуйте примеру

И не используйте WebSockets

WebSockets отличный маркетинговый

продукт

как и

Всем спасибоДоклад основан на реальных событиях

https://samsaffron.com/archive/2015/12/29/websockets-caution-requiredВ докладе принимали участие:

http://stackoverflow.com/questions/7022383/how-can-i-make-a-browser-to-browser-peer-to-peer-connection/7933140#7933140

http://knoxxs.github.io/chat/architecture/real-time/2015/11/23/chat-architecture-everywhere/

И многие другие…