Kann PHP das Internet der Dinge schaffen?

(*-*)浩
Freigeben: 2023-02-27 11:38:01
Original
6865 Leute haben es durchsucht

Ist PHP nicht für IoT-Server geeignet?

Kann PHP das Internet der Dinge schaffen?

In der traditionellen Denkweise wird Ihnen oft gesagt, dass PHP nicht für IoT-Server geeignet ist, und Sie werden aufgefordert, auf Java oder Node umzusteigen Andere Sprachen, ja, ja, PHP im herkömmlichen Sinne ist in der Tat schwierig, einen IoT-Server zu erstellen, weil es so lahm ist. Das bedeutet natürlich nicht, dass es nicht vollständig möglich ist . (Empfohlenes Lernen: PHP-Video-Tutorial)

Wenn Sie beispielsweise einen TCP-Server implementieren möchten, müssen Sie möglicherweise Code mit dem folgenden Prinzip schreiben:

for ($i = 0;$i <= 1;$i++){
    $pid = pcntl_fork();
    if($pid){
        if($i == 0){
            $server = stream_socket_server("tcp://127.0.0.1:9501", $errno, $errstr, STREAM_SERVER_BIND);
        }else if($i == 1){
            $tickTime = time()+3600;
            while (1){
                usleep(1);
                if($tickTime == time()){
                    //do my tick func
                }
            }
        }
    }}
Nach dem Login kopieren

Die Bedeutung des obigen Codes entspricht der Erstellung eines TCP-Servers in einem Prozess und der Zeiterkennung in einer Endlosschleife in einem anderen Prozess, wodurch die Timer-Logik realisiert wird.

Das sieht wirklich lahm aus und für PHPer, die im Allgemeinen über eine schwache Programmiergrundlage verfügen, ist es wirklich schwierig, es aufrechtzuerhalten. Natürlich werden einige Leute jetzt sagen, gibt es Workerman nicht? Ja, Workerman ist tatsächlich ein PHP-Multiprozess-Framework, das die oben genannten Codeprinzipien stark verkörpert und Ihnen hilft, sich auf die Implementierung der Codelogik zu konzentrieren , es wird gesagt, dass PHP von Zeit zu Zeit das Internet der Dinge betreibt, tatsächlich ein Trugschluss ist.

Natürlich sagen einige Leute derzeit, dass die Go-Sprache über Coroutinen verfügt. Wenn Sie Workerman zum Blockieren von Datenbankaufrufen verwenden, ist die Effizienz sehr schlecht und es wird schwierig sein, eine hohe Parallelität zu erreichen Tatsächlich können wir jedoch so viele Prozesse wie möglich verwenden, um diesen Mangel auszugleichen, nämlich eine Heap-Maschine. Wenn Sie wirklich jeden Cent ausgeben möchten, spielt das natürlich keine Rolle. Zu diesem Zeitpunkt können wir uns unsere Killerwaffe einfallen lassen, nämlich die Coroutine von Swoole4.x.

Das obige ist der detaillierte Inhalt vonKann PHP das Internet der Dinge schaffen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
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!