I was worried about the fragmentation. Not sure whether Tornado.WebSocketHandler.on_message receive a whole message or not...
Yes, on_message
will always receive one entire message at a time. WebSocketHandler will reassemble the message from fragments if necessary.