Ajax推送系统
在我自己的系统中,我有一个PHP
页面,显示从网上交易到最新交易的所有商品。
每当有人从我这里买东西时,我希望此页面自动更新。
我可以AJAX
每 5 秒钟打一次电话来检查数据库中的订单,但这似乎是1980年?还是人们这样做的方式?
每当我的php newOrder() 函数( 让其 调用)被调用时,如何 将 通知 推 送到php
页面? __
回答:
您可以在PHP中实现推送,但是它并不是最有效的解决方案,因为要实现推送,您需要在客户端和服务器之间维持长期运行的连接(HTTP或WebSocket连接)。
看到:
- Long Polling/HTTP Streaming General Questions
- phpwebsocket
- php-websocket on github
- Ratchet
- how to implement comet in PHP - frequently linked to guide
构建实时基础架构时,一般的最佳实践是将推送解决方案与Web应用程序分离(
注意:node.js和socket.io对此做了些改动,但我个人仍然认为应该将其分离
)。但是,假设后者仍然是最好的解决方案,则需要编写/托管/安装此推送解决方案。解耦还意味着该技术不必是PHP,但您
从PHP访问/使用它。也许有点矫kill过正?尤其是如果您的网站上没有 太多 用户?
为简单起见,我建议您考虑使用第三方托管服务。我在一家名为Pusher的公司工作。使用我们的服务,使您无需安装和维护应用程序实时部分。它还使添加所需功能变得非常容易。您所需要做的就是在现有应用程序中添加几行PHP代码以触发推送通知,并在前端中添加几行JavaScript。
资源:
- 为此,最常用的PHP库是:https : //github.com/pusher/pusher-php-server
- 快速入门指南
如果您想研究上面提到的替代技术或某些技术,我会列出您可能也感兴趣的实时技术。
以上是 Ajax推送系统 的全部内容, 来源链接: utcz.com/qa/404358.html