Web开发中的推拉模型

时间:2017-12-04 20:34:01

标签: javascript php paradigms

我想为自己创建一个基本核心(或包)来处理服务器端和客户端之间的交互。我的方法是:

  • 将时间间隔设置为每两秒(任意选择)
  • 在PHP端创建一个脚本。此脚本将允许其他PHP脚本添加调用(或删除它们)的函数以收集将发送给客户端的信息。
  • 每2秒,客户端将调用此PHP脚本来请求信息。
  • 发生这种情况时,PHP脚本将调用所有添加的函数,存储其数据,并将所有数据发送回客户端。
  • 客户端将适当处理此数据

我不确定这是否真的描述了Push-Pull模型或类似但不同的模型的实现。我想从客户端到服务器端的“推送”不需要同步到这两秒窗口。

所有这一切的最终目标是让我创建一种方法,使客户端在显示浏览器窗口打开时可能发生变化的信息时保持最新状态。

我想问一下这是否是推拉模型的正确解释,如果这是实现这一目标的合适方式,并且可能有更适合这个目标的范例。

2 个答案:

答案 0 :(得分:1)

推送:SERVER端主动向客户端发送信息(通过WebSocket)。因此,客户端被动地侦听服务器的消息。

拉:CLIENT主动请求来自服务器的信息(通过HTTP或WebSocket)。服务器处理请求并发回请求的信息。

你想要达到的是PUSH。虽然,你试图通过longpolling实现这一点(客户端主动收集他的信息)。

如果你真的想要实现你的方法,那就进入WebSockets。你可以在https://socket.io/上看到一个基本的例子,遗憾的是这是nodeJs而不是PHP。

答案 1 :(得分:0)

PHP支持server sent events,这听起来适合您要实现的目标