微服务使用的phprpc,但是最近发现phprpc依赖的fsockopen 高并发下阻塞问题很严重,有解决的好办法吗?

 尹洪2502855427 发布于 2022-11-30 20:34

使用phprpc,但是最近发现phprpc依赖的fsockopen 高并发下阻塞问题很严重,又解决的好办法吗?

  • 大量读的操作,关联到每个用户,又要保证实时性,这个怎么破?

8 个回答
  • 用yar试一下呢

    2022-11-30 20:44 回答
  • 消息队列是解决并发问题的根本方案

    2022-11-30 20:44 回答
  • 有人提到了消息队列,感觉在实时性要求高、无法异步的场景并不适合。

    phprpc我并没用过,是不是本身存在性能问题尚不可知。

    但其它产品的经验来看,每次请求都打开连接句柄,必然存在堵塞的问题。内网连接mysql在达到一定数据量级时,都可以看到有比较高的连接延迟,查询过程本身并不慢。

    如果是这个原因,yaf估计也会存在这样的问题,长连接和连接池是你的研究方向。

    2022-11-30 20:44 回答
  • 用任务队列
    1.新建一个数据表 去存放队列信息
    2.利用linux上的定时任务去后台异步调用PHP /shell 脚本 去执行任务
    2022-11-30 20:44 回答
  • 这方面没有什么研究,楼主可以试试:http://wiki.swoole.com/wiki/page/196.html

    然后有什么心得记得分享哦

    2022-11-30 20:44 回答
  • 实时性的你rpc也解决不了问题啊。。。应该是用长连接吧。。应该具体需求说说看,感觉你的需求和解决方案可能不匹配

    2022-11-30 20:44 回答
  • 对实时性要求不高可以考虑消息队列。
    另外还可以考虑php的swoole扩展看看性能是否会提高一点。

    2022-11-30 20:44 回答
  • 谢谢邀请。推荐消息队列

    2022-11-30 20:44 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有