Обо мне
Дмитрий Плюснин
pliusnin@gmail.com
Skype: pliusnin.dmitry
Используем
WebSockets
c Symfony2
Web Applications
Request
Response
HTTP
Требования
интерактивного
веб-приложения
•Минимальная латентность
•Асинхронность
HTTP протокол
• Синхронный
• Низкая эффективность при
передаче большого количества
маленьких по объему данных
WebSocket протокол
• Асинхронный
• Двунаправленная передача данных
• Низкие требования к сетевым
ресурсам
• Простое API
WebSockets
Request
GET /chat HTTP/1.1
Host: server.example.com
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key:
dGhlIHNhbXBsZSBub25jZQ==
Origin: http://example.com
Sec-WebSocket-Protocol: chat,
superchat
Sec-WebSocket-Version: 13
Response
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Accept:
s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
Sec-WebSocket-Protocol: chat
WebSocket API
var ws = new
WebSocket(‘ws://example.org:8080/chat’);
ws.onopen = function () {
ws.send(‘Hello!’);
};
ws.onmessage = function (event) {
console.log(event.data);
};
Использование
WebSockets…
SockJS
Client Browser (JS)
Почему не РНР?
ASYNCSYNC
SockJS

WebSockets