php做长轮询的时候,为什么有时会出现查询不到数据的问题?求大神帮忙看看。 10

基本思路是前端界面负责发送消息数据,同时异步请求新消息,服务器收到消息后循环查询数据库,直到查询到新消息才返回数据,同时将消息的isread字段设置为1。虽然大部分时候可... 基本思路是前端界面负责发送消息数据,同时异步请求新消息,服务器收到消息后循环查询数据库,直到查询到新消息才返回数据,同时将消息的isread字段设置为1。虽然大部分时候可以正常显示新消息,但是偶尔会出现发送了新消息后前端界面无法显示出来,查询数据库发现消息isread字段已经被设置为1了。按理只要执行修改了服务器一定会同时返回消息才对啊,请大神帮忙看看,谢谢了。 展开
 我来答
cy...v@163.com
2017-12-26
知道答主
回答量:70
采纳率:62%
帮助的人:8.9万
展开全部
确认一下你的消息轮询的时间间隔,会不会造成两个线程同时读取一个文件内容的问题。推荐用缓存存储,再加一个标志位,表示是否有人在读取数据。
追问
一次只有一个查询,返回数据了才会发送下一个查询请求啊
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式