Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 更改/插入时从数据库获取通知的标准方法_Php_Mysql - Fatal编程技术网

Php 更改/插入时从数据库获取通知的标准方法

Php 更改/插入时从数据库获取通知的标准方法,php,mysql,Php,Mysql,我现在正在尝试制作一个针对1000-1500用户的聊天应用程序。当前发生的情况是,一旦我的网页加载,我会每秒发出一个ajax请求,以检查数据库中是否有任何新内容。我想知道这是否是标准做法,或者是否有更有效的方法在插入时以某种方式由服务器通知。使用WebSocket。或者至少是AJAX轮询。每秒从1500个客户端触发一个请求很可能会杀死您的服务器 看看您是否愿意向堆栈中引入新内容。但是如果您仅限于PHP,就有PHP websocket解决方案。使用websocket。或者至少是AJAX轮询。每秒从

我现在正在尝试制作一个针对1000-1500用户的聊天应用程序。当前发生的情况是,一旦我的网页加载,我会每秒发出一个ajax请求,以检查数据库中是否有任何新内容。我想知道这是否是标准做法,或者是否有更有效的方法在插入时以某种方式由服务器通知。

使用WebSocket。或者至少是AJAX轮询。每秒从1500个客户端触发一个请求很可能会杀死您的服务器


看看您是否愿意向堆栈中引入新内容。但是如果您仅限于PHP,就有PHP websocket解决方案。

使用websocket。或者至少是AJAX轮询。每秒从1500个客户端触发一个请求很可能会杀死您的服务器


看看您是否愿意向堆栈中引入新内容。但是,如果您仅限于PHP,就有PHP websocket解决方案。

您的方法是一种标准方法,称为。根据客户端的数量,对于具有最新硬件的服务器(通过
AJAX
执行
HEAD
请求,通过
HTTP status
指示状态),这应该是非常好的

另一种选择——正如Jan所指出的——被称为

  • 优点:对服务器的请求要少得多
  • 缺点:需要客户端浏览器提供或不提供的技术
如果您选择第二种方法,请查看(W3C草稿)

该规范定义了一个API,用于打开HTTP连接以接收来自服务器的DOM事件形式的推送通知。API的设计使得它可以扩展到其他推送通知方案,如推送SMS


您的方法是一种称为的标准方法。根据客户端的数量,对于具有最新硬件的服务器(通过
AJAX
执行
HEAD
请求,通过
HTTP status
指示状态),这应该是非常好的

另一种选择——正如Jan所指出的——被称为

  • 优点:对服务器的请求要少得多
  • 缺点:需要客户端浏览器提供或不提供的技术
如果您选择第二种方法,请查看(W3C草稿)

该规范定义了一个API,用于打开HTTP连接以接收来自服务器的DOM事件形式的推送通知。API的设计使得它可以扩展到其他推送通知方案,如推送SMS


即使我使用socket.io,我仍然需要为每个用户每秒查询一次我的数据库,以检查消息更新。这也会导致问题吗?我们的想法是以另一种方式构造应用程序。您不需要将消息存储在数据库中。或者至少你不需要经常阅读。当用户到达时,只需通过WS直接将消息推送到他们手中。即使我使用socket.io,我仍然需要每用户每秒至少查询一次我的数据库,以检查消息更新。这也会导致问题吗?我们的想法是以另一种方式构造应用程序。您不需要将消息存储在数据库中。或者至少你不需要经常阅读。当用户到达时,只需通过WS直接将消息推送到用户。