gpt4 book ai didi

php - 同时向多个用户广播通知 - PHP/MySql/Ajax

转载 作者:行者123 更新时间:2023-11-30 23:23:35 26 4
gpt4 key购买 nike

我是论坛的新手,非常感谢任何建议我已经搜索并阅读了很多主题以找到适合我的项目的最佳方法我会开门见山

我正在使用 wamp 服务器(内联网)构建一个广播网站,供内部使用。

使用的语言:PHP、JS、Ajax、MySql

目前我们使用的是聊天系统(spark),但该项目的想法是保留广播记录并且更容易跟踪

请不要向我提供第三方应用程序/工具

我有一个用户提交信息的简单 html 表单,考虑这个例子。

形式:标题(输入文本域),广播消息(输入文本域)

数据库表中存储的信息:

bc_id, title, bc_msg, submitted_by, date_time

另外一张表user_got_bc:user_id,bc_id,bc_sent(默认为0),一旦发送通知,值为1

我正在使用 ajax 查看“user_got_bc”表并验证哪个用户具有 bc_sent = 0 并使用来自另一个表的 bc 信息向他发送通知,然后将 bc_sent 的值更新为 1

使用 setinterveral 每 10000 毫秒执行一次 ajax 代码

一旦用户提交广播,我希望所有其他用户(多个)同时收到通知(少一秒或多一秒都可以)

现在关于通知,您不必担心,我正在使用桌面通知 (webkitnotification),我知道它不跨浏览器兼容,但没关系,它工作正常

也就是说,一切正常

我担心的是 ajax 代码将与服务器建立的连接数,无论好坏,用户越多,连接数越多

我知道用那么多的连接轰炸服务器是不好的,特别是因为它是每 10 秒 x 用户数

我在很多论坛上读到使用 comets,从我收集到的信息来看,它对 PHP 不友好,而且我以前从未实现过它

所以我的问题是:- 是否有更好的方法或保持设置的方式很好? - 如果 cometd 更好,是否可以提供适用于该项目的代码片段?

提前致谢。

最佳答案

请谷歌搜索 Ajax 长轮询。但是对于这种项目我建议使用一些实时 I/O 软件,例如

node.jssocket.io

如果您有良好的 JavaScript 技能,那么您在使用上面列出的内容时应该没有问题应用。如果您的项目将有更多用户,那么您将需要 PUB-SUB、实时、跨浏览器套接字支持。最后一个PUSH技术。上面列出的应用程序具有所有这些功能。所以试试吧。

如果您仍然想坚持使用 PHP、JS、Ajax、MySql,那么您可能需要 Ajax 长轮询技术。

关于php - 同时向多个用户广播通知 - PHP/MySql/Ajax,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14418950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com