V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
gouchaoer
V2EX  ›  PHP

推荐个彻底解决 swoole 和 yii2 结合问题的框架

  •  
  •   gouchaoer · 2017-09-17 17:12:36 +08:00 via Android · 6848 次点击
    这是一个创建于 2384 天前的主题,其中的信息可能已经有所发展或是发生改变。
    github: https://github.com/deepziyu/yii2-swoole
    为什么说是彻底解决呢?因为之前的一堆 swoole/workerman 结合 yii2/laravel 的框架的 io 调用(比如 sql、redis 或者 rpc )还是阻塞的,虽然 hello-world 压测不错,但是实际上业务中都有大量 io,也许 qps 比 php-fpm 还低,因为 php-fpm 可以几百上千,swoole 的 worker 进程就 n 个。
    5 条回复    2017-09-18 20:00:29 +08:00
    wekw
        1
    wekw  
       2017-09-18 02:02:57 +08:00
    这个项目用在生产环境了没?
    sagaxu
        2
    sagaxu  
       2017-09-18 17:23:29 +08:00
    阻塞 IO 是很慢的,前几天压测一个简单的应用,不记 access log,单机 QPS 可以达到 20 万,一写 log 就掉到 10 万以内,只好开了个生产消费队列,用一个独立的线程专门写 log。
    gouchaoer
        3
    gouchaoer  
    OP
       2017-09-18 18:41:16 +08:00 via Android
    @sagaxu 所以我建议他把文件操作弄成 swoole 的 aio
    gouchaoer
        4
    gouchaoer  
    OP
       2017-09-18 19:43:45 +08:00 via Android
    sagaxu
        5
    sagaxu  
       2017-09-18 20:00:29 +08:00
    @gouchaoer 不是,我是 Java 写 log,8K 的 buffer 同步写入严重影响性能,另外开个写 log 专用的线程就解决了,多线程就这点好,队列里面扔什么都行
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1024 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:31 · PVG 06:31 · LAX 15:31 · JFK 18:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.