Rumah > rangka kerja php > ThinkPHP > 这个办法可以让TP5.0在SWOOLE上飞起来!

这个办法可以让TP5.0在SWOOLE上飞起来!

藏色散人
Lepaskan: 2020-07-20 16:44:15
ke hadapan
3118 orang telah melayarinya

下面由thinkphp框架教程栏目给大家介绍让TP5.0在SWOOLE上飞起来的方法,希望对需要的朋友有所帮助!

这个办法可以让TP5.0在SWOOLE上飞起来!

TP-SWOOLE

目前,TP5.1官方已经提供了think-swoole2.0,集成程度以前优雅很多,不过5.0的集成方式确实有些鸡肋。所以看了下2.0,为5.0开发了一个扩展包,可以采用composer下载

composer require xaviertony/xavier-swoole
Salin selepas log masuk

开发之前,需要先熟悉TP5.0的生命周期,不然就无从下手了。

由于TP主要在Apache或者NGINX下运行,每次运行结束都会进行释放,而swoole则是常住内存,TP5很多类都由单例实现,所以难免会入坑,其中大坑主要是request,由于启动后请求被实例化,如果不删除请求势力,以后每次都是采用这个实例,造成无法正常访问页面,因为每次请求达到后需要先将请求实例删除

public static function deletethis()
    {
        if (!is_null(self::$instance)) {
            self::$instance=null;
        }
    }
Salin selepas log masuk

第三方包的配置文件必须在application/extra下,文件名为swoole.php

<?php
return [
    &#39;host&#39;                  => &#39;0.0.0.0&#39;, // 监听地址
    &#39;port&#39;                  => 9501, // 监听端口
    &#39;mode&#39;                  => &#39;&#39;, // 运行模式 默认为SWOOLE_PROCESS
    &#39;sock_type&#39;             => &#39;&#39;, // sock type 默认为SWOOLE_SOCK_TCP
    &#39;app_path&#39;              => getcwd() . &#39;/application&#39;, // 应用地址 如果开启了 &#39;daemonize&#39;=>true 必须设置(使用绝对路径)
    &#39;file_monitor&#39;          => false, // 是否开启PHP文件更改监控(调试模式下自动开启)
    &#39;file_monitor_interval&#39; => 2, // 文件变化监控检测时间间隔(秒)
    &#39;file_monitor_path&#39;     => [], // 文件监控目录 默认监控application和config目录
    // 可以支持swoole的所有配置参数
    &#39;pid_file&#39;              => getcwd()  . &#39;/runtime/swoole.pid&#39;,
    &#39;log_file&#39;              => getcwd()  . &#39;/runtime/swoole.log&#39;,
    &#39;task_worker_num&#39;       => 20,
    //&#39;document_root&#39;         => getcwd() . &#39;public&#39;,
    //&#39;enable_static_handler&#39; => true,
    &#39;daemonize&#39;                => 1,//守护
    &#39;worker_num&#39; => 8,    //worker process num
    &#39;max_request&#39; => 10000,
];
Salin selepas log masuk

启动命令

php think swoole start
Salin selepas log masuk

守护启动

php think swoole start -d
Salin selepas log masuk

停止服务

php think swoole stop
Salin selepas log masuk

Atas ialah kandungan terperinci 这个办法可以让TP5.0在SWOOLE上飞起来!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:segmentfault.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan