WebSockets - Funcionalidades
O Web Socket representa uma grande atualização na história das comunicações na web. Antes de sua existência, toda comunicação entre os clientes web e os servidores dependia apenas de HTTP.
O Web Socket ajuda no fluxo dinâmico das conexões full duplex persistentes. Full duplex refere-se à comunicação de ambas as extremidades com velocidade rápida considerável.
É denominado como um divisor de águas por causa de sua eficiência em superar todas as desvantagens dos protocolos existentes.
Web Socket para desenvolvedores e arquitetos
Importância do Web Socket para desenvolvedores e arquitetos -
O Web Socket é um protocolo independente baseado em TCP, mas foi projetado para oferecer suporte a qualquer outro protocolo que tradicionalmente seria executado apenas em uma conexão TCP pura.
O Web Socket é uma camada de transporte sobre a qual qualquer outro protocolo pode ser executado. A API Web Socket suporta a capacidade de definir subprotocolos: bibliotecas de protocolo que podem interpretar protocolos específicos.
Exemplos de tais protocolos incluem XMPP, STOMP e AMQP. Os desenvolvedores não precisam mais pensar em termos do paradigma de solicitação-resposta HTTP.
O único requisito no lado do navegador é executar uma biblioteca JavaScript que possa interpretar o handshake do Web Socket, estabelecer e manter uma conexão do Web Socket.
No lado do servidor, o padrão da indústria é usar bibliotecas de protocolo existentes que rodam em cima de TCP e alavancar um Web Socket Gateway.
O diagrama a seguir descreve as funcionalidades do Web Sockets -
As conexões do Web Socket são iniciadas via HTTP; Os servidores HTTP normalmente interpretam os handshakes do Web Socket como uma solicitação de atualização.
Os Web Sockets podem ser um complemento complementar a um ambiente HTTP existente e podem fornecer a infraestrutura necessária para adicionar funcionalidade da web. Ele se baseia em protocolos full duplex mais avançados que permitem que os dados fluam em ambas as direções entre o cliente e o servidor.
Funções de Web Sockets
Os Web Sockets fornecem uma conexão entre o servidor da web e um cliente de forma que ambas as partes possam começar a enviar os dados.
As etapas para estabelecer a conexão do Web Socket são as seguintes -
O cliente estabelece uma conexão por meio de um processo conhecido como Web Socket handshake.
O processo começa com o cliente enviando uma solicitação HTTP regular ao servidor.
Um cabeçalho de atualização é solicitado. Nessa solicitação, ele informa ao servidor que a solicitação é para conexão do Web Socket.
Os URLs do Web Socket usam o wsesquema. Eles também são usados para conexões seguras de Web Socket, que são equivalentes a HTTPs.
Um exemplo simples de cabeçalhos de solicitação inicial é o seguinte -
GET ws://websocket.example.com/ HTTP/1.1
Origin: http://example.com
Connection: Upgrade
Host: websocket.example.com
Upgrade: websocket