tornado简易聊天室

初学tornado,尝试写了一下简易聊天室。


class EchoHandler(tornado.websocket.WebSocketHandler):

users = set()

def check_origin(self, origin):

return True

def open(self):

self.users.add(self)

for u in self.users:

u.write_message('欢迎用户[%s]-[%s]' %(self.request.remote_ip,datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")))

@tornado.gen.coroutine

def on_message(self, message):

for u in self.users:

u.write_message(u"[%s]-[%s]-说:%s" % (self.request.remote_ip,datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),message))

def on_close(self):

self.users.remove(self)

for u in self.users:

u.write_message(u"[%s]-[%s]-离开了" % (self.request.remote_ip,datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")))


主要是借着websocket深层理解一下tornado的异步功能,写给以后的自己哈哈

推荐阅读更多精彩内容

  • python3知识点 jquery.min.js web服务器代码: #coding=utf-8 importto...
    武步天下阅读 1,171评论 0 0
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 132,353评论 18 139
  • ----------------- *模型 模型是业务对象的呈现 * 系统已定义的模型查看 设置->技术->数据结...
    守望村夫阅读 2,461评论 0 2
  • 必须要用“惊魂未定”这四个字! 2011年11月14日17点40分,我和往常一样第一个冲到快乐2班教室门口接小王老...
    高小花0218阅读 225评论 0 0
  • 每天我们好像都沉浸在互联网的世界里,不能自拔。小A也不例外。 某一秒,小A和我说,突然有种感觉好像从互联网世界走进...
    大F小J阅读 617评论 0 4