Improve speed websocket sends messages (#27295)

* Improve speed websocket sends messages

* return -> continue
pull/27374/head
Paulus Schoutsen 2019-10-07 20:08:07 -07:00
parent 463c2e8d45
commit 1614e0d866
1 changed files with 10 additions and 4 deletions

View File

@ -61,12 +61,15 @@ class WebSocketHandler:
message = await self._to_write.get()
if message is None:
break
self._logger.debug("Sending %s", message)
if isinstance(message, str):
await self.wsock.send_str(message)
continue
try:
if isinstance(message, str):
await self.wsock.send_str(message)
else:
await self.wsock.send_json(message, dumps=JSON_DUMP)
dumped = JSON_DUMP(message)
except (ValueError, TypeError) as err:
self._logger.error(
"Unable to serialize to JSON: %s\n%s", err, message
@ -76,6 +79,9 @@ class WebSocketHandler:
message["id"], ERR_UNKNOWN_ERROR, "Invalid JSON in response"
)
)
continue
await self.wsock.send_str(dumped)
@callback
def _send_message(self, message):