Rumah >pembangunan bahagian belakang >tutorial php >Lihatlah! Perkara baik 'Roadrunner' yang boleh mempercepatkan program PHP ada di sini!

Lihatlah! Perkara baik 'Roadrunner' yang boleh mempercepatkan program PHP ada di sini!

藏色散人
藏色散人ke hadapan
2021-10-15 15:32:233863semak imbas

Lihatlah! Perkara baik 'Roadrunner' yang boleh mempercepatkan program PHP ada di sini!

Pakej Laravel Octane (https://github.com/laravel/octane) telah dikeluarkan baru-baru ini. Ia dicipta untuk menjadikan Laravel lebih mesra Swoole dan RoadRunner. Kami telah menggunakan RoadRunner dan bukannya php-fpm dalam dev.family untuk beberapa lama dan kami memutuskan untuk berkongsi pengalaman kami dan mendedahkan kelebihan yang ada padanya.

RoadRunner ialah pelayan aplikasi PHP sumber terbuka berprestasi tinggi yang ditulis dalam Go. Perbezaan utama dengan php-fpm ialah RoadRunner berinteraksi dengan proses pemastautin php, tidak seperti php-fpm, yang mencipta dan membunuh proses php baharu pada setiap permintaan. [Disyorkan: Tutorial video PHP]

Kelebihan proses pemastautin:

  • Tiada masa terbuang untuk permulaan
  • Tiada masa yang dihabiskan untuk mencipta sambungan ke pangkalan data
  • Keupayaan untuk menggunakan cache memori secara langsung dalam proses

Kelemahan pendekatan ini ialah ia tidak sesuai untuk semua aplikasi PHP, kerana kod biasanya ditulis dengan pemikiran bahawa proses PHP akan ditamatkan selepas permintaan. Oleh itu, anda perlu dapat memantau kebocoran memori dan mengendalikan keadaan global dengan berhati-hati. Oleh itu, projek warisan mungkin tidak dilancarkan di Roadrunner.

Walau bagaimanapun, Roadrunner juga mempunyai ciri berguna lain, seperti maklum balas statik, pemampatan tindak balas dan pengimbangan. Fungsi bundle biasa jatuh pada nginx. Jika anda menggunakan PHP Roadrunner, anda boleh melancarkan aplikasi (nginx) tanpanya.

RoadRunner juga mudah dipanjangkan. Anda boleh menggunakan komponennya untuk pelayan aplikasi anda sendiri dan mendapat peluang, contohnya, untuk mengendalikan beberapa permintaan secara terus di Go menggunakan soket web.

RoadRunner sendiri bukanlah satu perkembangan baru, ia sudah berusia beberapa tahun. Walau bagaimanapun, dengan sokongan rasmi untuk Laravel Octane, anda boleh memastikan bahawa rangka kerja itu sedia untuk menggunakannya.

Kami melakukan ujian kecil pada projek sebenar untuk membandingkan kelajuan php-fpm dan roadrunner. Hasilnya adalah seperti berikut:

php-fpm:
teks biasa: 1150 RPS
pertanyaan tunggal: 530 RPS

roadrunner:
teks biasa: 2200 RPS
pertanyaan tunggal: 1600 RPS

teks biasa -- pertanyaan yang mengembalikan JSON tetap
pertanyaan tunggal -- akan Pertanyaan

yang mengembalikan hasil pertanyaan tunggal kepada pangkalan data dalam format JSON adalah lebih pantas kerana kekurangan masa permulaan dan penggunaan sambungan kekal ke pangkalan data.

Alamat asal: https://dev.to/dev_family/roadrunner-here-and-now-2oo9

Alamat terjemahan: https://learnku.com/php/ t/61447

Atas ialah kandungan terperinci Lihatlah! Perkara baik 'Roadrunner' yang boleh mempercepatkan program PHP ada di sini!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:learnku.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam