Rumah  >  Artikel  >  rangka kerja php  >  Analisis ringkas tentang cara memasang dan menggunakan swole

Analisis ringkas tentang cara memasang dan menggunakan swole

PHPz
PHPzasal
2023-03-27 16:16:211897semak imbas

Swoole ialah enjin komunikasi rangkaian tak segerak PHP untuk persekitaran pengeluaran Ia menyediakan keupayaan komunikasi rangkaian klien/pelayan biasa bagi Soket TCP/UDP/Unix, serta membaca dan menulis fail tak segerak yang sepadan, MySQL tak segerak dan I/O tak segerak yang lain. Keupayaan operasi membolehkan pembangun PHP menulis aplikasi perkhidmatan rangkaian berprestasi tinggi dan berprestasi tinggi tanpa mempelajari pengetahuan pengaturcaraan C/C++ yang kompleks Mereka hanya perlu menulis kod PHP yang ringkas dan mudah difahami.

Artikel ini akan memperkenalkan pemasangan, penggunaan asas, pembangunan web dan penyelesaian kepada masalah biasa Swoole.

1. Pasang Swoole

Versi PHP yang disokong oleh Swoole ialah PHP5.3 dan ke atas Ia boleh dipasang melalui kompilasi kod sumber atau PECL Langkah terperinci untuk kaedah ini:

Kaedah 1. Susun dan pasang menggunakan kod sumber

  1. Muat turun kod sumber Swoole

Anda boleh memuat turunnya dari Swoole's laman web rasmi ( https://www.swoole.com/) Muat turun pakej kod sumber Swoole terkini.

  1. Ekstrak pakej kod sumber

Jalankan arahan berikut dalam terminal untuk nyahmampat pakej kod sumber:

tar zxvf swoole-src-4.6.7.tar.gz
  1. Masukkan direktori yang dinyahmampat dan susun serta pasang

Laksanakan arahan berikut dalam terminal untuk memasuki direktori yang dinyahmampat, susun dan pasang:

cd swoole-src-4.6.7
phpize
./configure
make && make install
  1. Tambah sambungan Swoole dalam php.ini

Edit fail php.ini dan tambah baris berikut pada penghujung:

extension=swoole.so
  1. Mulakan semula PHP

Mulakan semula PHP untuk menjadikan konfigurasi berkuat kuasa.

Kaedah 2. Pasang menggunakan PECL

  1. Jalankan arahan berikut untuk memasang Swoole
pecl install swoole
  1. Tambah sambungan secara manual dalam php. ini

Edit fail php.ini dan tambah baris berikut pada penghujung:

extension=swoole.so
  1. Mulakan semula PHP

Mulakan semula PHP untuk membuat konfigurasi berkuat kuasa.

2. Penggunaan asas

  1. Pelayan

Berikut ialah contoh kod pelayan TCP ringkas:

<?php
$serv = new swoole_server("0.0.0.0", 9501);

$serv->on('connect', function ($serv, $fd) {
    echo "Client: Connect.\n";
});

$serv->on('receive', function ($serv, $fd, $from_id, $data) {
    $serv->send($fd, "Server: " . $data);
});

$serv->on('close', function ($serv, $fd) {
    echo "Client: Close.\n";
});

$serv->start();

Kod di atas mencipta pelayan TCP dan mendengar port 9501. Apabila klien disambungkan, "Klien: Sambungkan adalah output;

  1. Pelanggan

Berikut ialah contoh kod untuk klien TCP mudah:

<?php
$client = new swoole_client(SWOOLE_SOCK_TCP);

if (!$client->connect('127.0.0.1', 9501, -1)) {
    echo "Error: {$client->errCode}\n";
    exit;
}

$client->send("Hello World!");
echo $client->recv();
$client->close();

Kod di atas mencipta klien TCP dan Sambung ke port 127.0.0.1:9501. Hantar rentetan "Hello World!", tunggu pelayan mengembalikan data, dan akhirnya tutup sambungan.

3. Pembangunan Web

Swoole juga menyokong pembangunan web Anda boleh menggunakan kelas SwooleHttpServer untuk mencipta pelayan web dan menggunakan SwooleHttpRequest dan SwooleHttpResponse untuk mengendalikan permintaan dan respons. . Berikut ialah Contoh mudah:

<?php
$http = new Swoole\Http\Server("0.0.0.0", 9501);

$http->on('request', function ($request, $response) {
    $response->header("Content-Type", "text/plain");
    $response->end("Hello World\n");
});

$http->start();

Kod di atas mencipta pelayan HTTP dan mendengar pada port 9501. Apabila diminta, rentetan "Hello World" dikembalikan.

4. Penyelesaian kepada masalah biasa

  1. Ralat biasa: "swoole.so: undefined symbol: uv_loop_size"

Penyelesaian: Ini kerana tiada libuv library, anda boleh laksanakan arahan berikut untuk memasang:

yum install libuv
  1. Ralat biasa: "phpize command not found"

Penyelesaian: Perintah phpize tiada, anda boleh melaksanakan arahan berikut Pemasangan:

yum install php-devel
  1. Bagaimana untuk menentukan sama ada sambungan Swoole dipasang

Anda boleh menggunakan arahan berikut untuk menyemak sama ada sambungan Swoole dipasang:

php -m | grep swoole

Jika "Swoole" dikeluarkan, ini bermakna sambungan Swoole telah dipasang.

  1. Cara menyediakan Nginx apabila menggunakan Swoole

Anda boleh menggunakan sambungan swoole_http_server yang disediakan oleh Swoole untuk memulakan pelayan web dan mendengar port yang ditentukan, dan kemudian membalikkan proksi Nginx ke port Can.

Di atas adalah pengenalan ringkas kepada Swoole ialah enjin komunikasi rangkaian tak segerak yang sangat berkuasa yang telah digunakan secara meluas dalam bidang konkurensi tinggi di Internet. Saya harap artikel ini akan membantu anda dan membantu anda menguasai lagi penggunaan Swoole.

Atas ialah kandungan terperinci Analisis ringkas tentang cara memasang dan menggunakan swole. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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