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

ThinkPHP5.1.18 版本发布——完善 Swoole/Workerman 支持

  •  
  •   topthink · 2018-06-30 11:26:43 +08:00 · 5093 次点击
    这是一个创建于 2346 天前的主题,其中的信息可能已经有所发展或是发生改变。

    该版本主要完善了对SwooleWorkermanHttpServer运行支持,改进Request类,并修正了一些已知的问题。

    主要更新

    • 改进关联append方法的处理
    • 路由初始化和检测方法分离
    • 修正destroy方法强制删除
    • app_init钩子位置移入run方法
    • think-swoole扩展更新到 2.0 版本
    • think-worker扩展更新到 2.0 版本
    • 改进 Url 生成的域名自动识别
    • Request类增加setPathinfo方法和setHost方法
    • Request类增加withGet/withPost/withHeader/withServer/withCookie/withEnv方法进行赋值操作
    • Route 类改进host属性的获取
    • 解决注解路由配置不生效的问题
    • 取消 Test 日志驱动,改为使用close设置关闭全局日志写入
    • 修正路由的response参数
    • 修正 204 响应输出的判断

    Swoole/Workerman 支持

    该版本开始,可以更好的支持 Swoole 和 Workerman 的 HTTPServer 运行。

    在你的项目根目录下面,安装或者更新 think-swoole (或者 think-worker )扩展

    composer require topthink/think-swoole
    // 或者
    composer requrie topthink/think-worker
    

    然后启动 HttpServer 服务

    php think swoole
    // 或者
    php think worker
    

    官方完全开发手册已经同步更新!

    ThinkPHP 官方小组

    2018-6-30

    6 条回复    2018-07-11 23:11:41 +08:00
    gouchaoer2
        1
    gouchaoer2  
       2018-06-30 18:28:38 +08:00 via Android
    支持 swoole/workerman 的话是不能有阻塞 io 的,而且 workerman 的回调和 swoole2 以上协程是很不一样的,thinkphp 能很好的支持么
    topthink
        2
    topthink  
    OP
       2018-07-01 23:29:06 +08:00
    @gouchaoer2 定位不同,TP 不是一个基于 swoole 或者 workerman 的框架,作为一个 HttpServer 并没有过多要求,有没有协程也不影响,而且很多开发过程需要注意的是应用自身开发需要注意的 和框架并无直接关系。不过扩展本身还会不断完善支持,这只是扩展第一个版本。
    shenzhe
        3
    shenzhe  
       2018-07-02 12:06:16 +08:00
    @topthink
    赞,让 tp 能跑在 swoole 里,应该也能得到直接的性能提升。

    异步协程这些,可以后续考虑哈~~~

    ^_^
    gouchaoer2
        4
    gouchaoer2  
       2018-07-02 12:18:52 +08:00 via Android
    @topthink swoole/workerman 里面不能有任何阻塞 io,不能说“没影响”,一旦阻塞了那么就会发生比 fpm 情况更糟的后果,因为别的 http 请求协程 /回调得不到调度。。。你可以试试在 benchmark 里面跑一些正常业务的 io 比如 sql 啥的。。。io 这个问题 fpm 都很吃力,在这里用阻塞啥的,我觉得不对
    wo642436249
        5
    wo642436249  
       2018-07-11 14:16:30 +08:00
    tp 跑在 swoole 上,使用路由的话出现了一些问题
    topthink
        6
    topthink  
    OP
       2018-07-11 23:11:41 +08:00
    @wo642436249 具体什么问题?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2686 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 09:30 · PVG 17:30 · LAX 01:30 · JFK 04:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.