Diese Methode kann TP5.0 auf SWOOLE zum Fliegen bringen!

藏色散人
Freigeben: 2020-07-20 16:44:15
nach vorne
3087 Leute haben es durchsucht

Die folgende Tutorial-Kolumne des thinkphp-Frameworks zeigt Ihnen, wie Sie TP5.0 auf SWOOLE zum Laufen bringen. Ich hoffe, dass es für Freunde hilfreich sein wird, die es brauchen!

Diese Methode kann TP5.0 auf SWOOLE zum Fliegen bringen!

TP-SWOOLE

Derzeit stellt TP5.1 offiziell think-swoole2.0 bereit, und der Integrationsgrad war hoch Vorher eleganter, aber die Integrationsmethode von 5.0 ist tatsächlich etwas geschmacklos. Also habe ich mir 2.0 angesehen und ein Erweiterungspaket für 5.0 entwickelt, das mit Composer

composer require xaviertony/xavier-swoole
Nach dem Login kopieren

heruntergeladen werden kann. Vor der Entwicklung müssen Sie mit dem Lebenszyklus von TP5.0 vertraut sein, andernfalls ist dies nicht möglich Start.

Da TP hauptsächlich unter Apache oder NGINX läuft, wird es nach jedem Vorgang freigegeben, während Swoole ein permanenter Speicher ist. Viele TP5-Klassen werden von Singletons implementiert, sodass es unvermeidlich ist, in Fallstricke zu geraten, darunter die Die größte Gefahr besteht darin, dass die Anforderung nach dem Start instanziiert wird. Wenn die Anforderung nicht gelöscht wird, wird diese Instanz in Zukunft jedes Mal verwendet, was dazu führt, dass die Seite nicht normal aufgerufen werden kann, da die Anforderungsinstanz sie benötigt muss nach Erreichen jeder Anforderung zuerst gelöscht werden

public static function deletethis()
    {
        if (!is_null(self::$instance)) {
            self::$instance=null;
        }
    }
Nach dem Login kopieren

Die Konfigurationsdatei des Drittanbieterpakets muss sich unter application/extra befinden und der Dateiname ist 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,
];
Nach dem Login kopieren

Startbefehl

php think swoole start
Nach dem Login kopieren

Daemon-Start

php think swoole start -d
Nach dem Login kopieren

Dienst stoppen

php think swoole stop
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonDiese Methode kann TP5.0 auf SWOOLE zum Fliegen bringen!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:segmentfault.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!