长轮询和轮询

一:长轮询

1. 长轮询:实时更新,使用队列技术来做,如果要是没人投票,卡住30秒,如果还是没人投票卡主30秒,以此类推,如果有人投票,立即实时更新数据
2. websocket 能实现,但是兼容性不好

import queue

q = queue.Queue()

q.put('123')

val = q.get()
print(val)

while True:
    try:
        val=q.get(timeout=5) # 如果没人提交数据,等5秒,循环等,如果有人提交数据,立即get
        print(val)
    except queue.Empty:
        print('超时')
        continue

 

二:轮询 

1. 轮询:在HTML上通过定时器定时向服务器发送请求,做页面更新
setInterval()

posted @ 2020-03-23 09:37  hbfengj  阅读(181)  评论(0)    收藏  举报