推送电子邮件/聊天如何工作?是否可以轻松实现小型网站?

chr*_*ris 4 javascript php mysql

我试图了解推送服务如何工作.我相信推送通知是服务器"推送"新项目到客户端的地方,但我不知道它在实践中是如何工作的.

例如,如果手机没有手动检查服务器是否有新消息,手机如何"知道"它有新的电子邮件要提取?

此外,如何为小型网站的聊天程序或通知系统实施?那里有php课程等吗?

Dan*_*ley 8

例如,如果手机没有手动检查服务器是否有新消息,手机如何"知道"它有新的电子邮件要提取?

PUSH实现因协议而异,但原则保持不变.客户端和服务器之间保持连接,服务器通知客户端有新事件.这利用了较少的带宽,并且通常导致比客户端定期询问服务器是否有任何新事件等待更快的交互.

作为演示,这就是PUSH IMAP(称为IDLE)邮件的工作原理:

  1. 客户端正常登录电子邮件服务器.
  2. 在登录过程中,服务器通告它能够IDLE.
  3. 客户端正常执行检查和下载新消息.
  4. 客户端发出IDLE命令而不是定期轮询新消息.
  5. 服务器和客户端之间的会话保持安静.
  6. 当新邮件到达并且服务器通知该邮件时EXISTS.
  7. 然后,客户端可以退出IDLE模式DONE并下载这些消息.
  8. 从步骤4开始重复.

  • Au逆转.它应该导致服务器负载的减少,并发使用并发连接和线程.与常量登录和轮询周期相比. (2认同)