Compressione

Supportato da

 

TsgcWebSocketServer

TsgcWebSocketHTTPServer

TsgcWebSocketClient

Browser Web come Chrome

 

 

Questa è una funzionalità che funziona molto bene quando ha bisogno di inviare una grande quantità di dati, di solito utilizzando un messaggio binario, perché comprime il messaggio WebSocket utilizzando il protocollo "PerMessage_Deflate", che è supportato da alcuni browser come Chrome.

This page is about compressing WebSocket messages. To compress HTTP/1.1 responses (static files and OnCommandGet), see HTTP Compression instead.

 

Per abilitare questa funzionalità, è necessario attivare la seguente proprietà:

 

Extensions/ PerMessage_Deflate / Enabled

 

 

Quando un client tenta di connettersi a un server WebSocket e questa proprietà è abilitata, invia un'intestazione con questa proprietà abilitata. Se il server ha attivato questa funzionalità, invia una risposta al client con questo protocollo attivato e tutti i messaggi saranno compressi. Se il server non dispone di questa funzionalità, tutti i messaggi vengono inviati senza compressione.

 

Nei browser web non è necessario fare nulla, se questa estensione è supportata verrà utilizzata automaticamente, altrimenti i messaggi verranno inviati senza compressione.

 

Se i messaggi WebSocket sono piccoli, è preferibile non abilitare questa proprietà perché consuma cicli CPU per comprimere/decomprimere i messaggi. Tuttavia, se si trasferisce una grande quantità di dati, si noterà un aumento della velocità di scambio dei messaggi.