传统的 polling 一般是由 C 向 S 询问:"有我的信件吗?"。S 接到询问之后,会立即查询,并且把查询结果告诉 C,不管有没有 C 的信件,要么回复:"嗯,你有 X 封信。",要么回复:"没,没有你的信"。
而 Long Polling 更像是这样,C 向 S 发出询问:"有我的信件吗?",S 开始查询,如果有则回复 C:"嗯,有你 x 封信"。如果没有,则不作任何回复,而是让 C 等着,自己一遍一遍地查询是否有订阅者的信。
换句话说:当 S 收到 C 的查询请求之后,Polling 则只查询一次,并且把查询结果告诉 C; 而 Long Polling 收到请求之后,则会一遍一遍地查询,直到有消息才会响应 C,不然一直 hold Client。
来源: http://blog.csdn.net/qq_25827845/article/details/78823861