Rumah > rangka kerja php > Swoole > teks badan

Analisis ringkas tentang cara memasang dan menggunakan swole

PHPz
Lepaskan: 2023-03-27 17:04:58
asal
1915 orang telah melayarinya

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
Salin selepas log masuk
  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
Salin selepas log masuk
  1. Tambah sambungan Swoole dalam php.ini

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

extension=swoole.so
Salin selepas log masuk
Salin selepas log masuk
  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
Salin selepas log masuk
  1. Tambah sambungan secara manual dalam php. ini

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

extension=swoole.so
Salin selepas log masuk
Salin selepas log masuk
  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();
Salin selepas log masuk

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();
Salin selepas log masuk

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();
Salin selepas log masuk

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
Salin selepas log masuk
  1. Ralat biasa: "phpize command not found"

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

yum install php-devel
Salin selepas log masuk
  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
Salin selepas log masuk

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!

Label berkaitan:
sumber:php.cn
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