V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
sagaxu
V2EX  ›  PHP

Swoole 终将一统高性能 php 场景

  •  
  •   sagaxu · Jan 4, 2017 via Android · 14472 views
    This topic created in 3400 days ago, the information mentioned may be changed or developed.
    2.0 支持 php7 和 coroutine 了,要上天了
    22 replies    2018-01-31 15:43:01 +08:00
    gouchaoer
        1
    gouchaoer  
       Jan 4, 2017 via Android
    只能在 websocket 之类的异步情景有优势,在一般的 http 应用中比不过 phalcon/yaf 的
    gouchaoer
        2
    gouchaoer  
       Jan 4, 2017 via Android
    而另一种思路则是类似 Swoole 和 phpdaemon 等 php-cli 常驻内存的异步方案(你可以理解成 php 版本的 nodejs ),然而这种方案 php-cli 本身就是一个 http 服务器(一些地方肯定没有 nginx/apache+php 方案那么成熟稳定,比如 https 支持之类的),而且常驻内存也会导致稳定性问题(和 nodejs 那样某个请求挂了应用就都挂了)没有 php-fpm 那么耐操,而且性能和 phalcon/yaf 一样: http://rango.swoole.com/archives/254 。因此除了需要 websocket 等异步功能情况下,我认为追求性能还是 yaf/phalcon 方案更好。
    xinhaiz
        3
    xinhaiz  
       Jan 4, 2017
    楼上确定用过 swoole 吗?
    gouchaoer
        4
    gouchaoer  
       Jan 4, 2017 via Android
    @xinhaiz 没有
    Immortal
        5
    Immortal  
       Jan 4, 2017
    swoole 还是吊吊的
    Immortal
        6
    Immortal  
       Jan 4, 2017
    和 phalcon/yaf 这类 web 框架是两个概念
    我也用 yaf~
    millken
        7
    millken  
       Jan 4, 2017
    我们为了追求性能,直接 php7+swoole 代替 nginx+php-fpm ,如今已经连续跑了几个月了。
    推荐 api 类的服务使用,性能是真不错。
    smallpath
        8
    smallpath  
       Jan 4, 2017
    和 nodejs 那样某个请求挂了应用就都挂了???? 什么鬼, node 表示一脸问号好吗
    elarity
        9
    elarity  
       Jan 4, 2017
    @gouchaoer 您真率真坦诚
    fuxkcsdn
        10
    fuxkcsdn  
       Jan 4, 2017
    我 X ,支持协程!屌屌的赶脚
    去年面试过一家游戏公司,他们就是用 swoole 做后台的
    zencoding
        11
    zencoding  
       Jan 4, 2017
    我厂生产线部分场景已使用了 swoole,目前运行良好
    dawniii
        12
    dawniii  
       Jan 4, 2017   ❤️ 1
    个人认为 swoole 主要作用应该是拓展了 php 的应用范围。性能的比重不是那么大。
    iyaozhen
        13
    iyaozhen  
       Jan 4, 2017 via Android
    @dawniii 嗯,确实。现在很多东西还是适合常驻内存的进程来使用。比如一直诟病的连接池
    kcross
        14
    kcross  
       Jan 4, 2017
    我本身写 php ,但是我感觉写 swoole 比写 go 还麻烦...
    mingyun
        15
    mingyun  
       Jan 4, 2017
    还没有用过
    ipom
        16
    ipom  
       Jan 5, 2017
    @gouchaoer Zephir 有什么好的 IDE 插件吗?准备给 Phalcon 贡献点代码,特别是 ORM 部分,它不支持临时表和 MySQL 的 JSON 语法,还有一些小 Bug 。
    如果 Phalcon 放弃全栈理念的话,它可以做到最好的 PHP 后台框架。我们的项目就用它来写 API 接口,基本上只用到了 MVC 、 ORM 、 Annotation 这几个功能。
    gouchaoer
        17
    gouchaoer  
       Jan 5, 2017
    @ipom php 下有支持 mysql 的 JSON 比较好的库么?
    ipom
        18
    ipom  
       Jan 5, 2017
    @gouchaoer 不怎么清楚,以前用 Java 几年了,现在很喜欢 PHP 。
    用 Phalcon 的时候, JSON 列取出来都是字符串,自己转成关联数组的,存的时候也自己确保是字符串。
    希望 PHP 越来越好。。。
    gouchaoer
        19
    gouchaoer  
       Jan 5, 2017 via Android
    @ipom 个人觉得用 zephir 写业务没法提升性能, phalcon 提升的性能来自于 mvc 弄成了扩展在简单的 api 请求中达到单页 php 性能。。。。 https://github.com/phalcon/zephir/issues/694 。。。。
    ipom
        20
    ipom  
       Jan 5, 2017 via Android
    @gouchaoer 不是用 Zephir 来写业务,没有好的 IDE 插件,修改 Phalcon 的代码不方便。
    它的 PHQL 解析部分代码,一个文件就有 3000 多行。
    hhxsv5
        21
    hhxsv5  
       Jan 31, 2018
    Laravel 具有高开发效率,分分钟撸出一套接口,但性能非常差,生产环境 FPM 下再怎么优化,一个 hello world 也要 120ms。Swoole 异步非阻塞高性能引擎
    我目前在造的轮子,通过 Swoole 来加速 Laravel/Lumen,快速提升至少 10 倍性能。有兴趣可以尝试下。
    hhxsv5
        22
    hhxsv5  
       Jan 31, 2018
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4713 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 04:05 · PVG 12:05 · LAX 21:05 · JFK 00:05
    ♥ Do have faith in what you're doing.