ホームページ > バックエンド開発 > PHPチュートリアル > PHPの非同期並列ネットワーク拡張機能swooleの使い方

PHPの非同期並列ネットワーク拡張機能swooleの使い方

WBOY
リリース: 2016-06-13 12:29:54
オリジナル
885 人が閲覧しました

PHPの非同期並列ネットワーク拡張機能swooleの使い方

Swoole は PHP の非同期並列拡張機能で、Node.js に少し似ていますが、swoole は同期と非同期の両方をサポートしており、node よりも強力です。 Swoole 拡張機能は、epoll の高性能イベント ポーリングに基づいており、マルチスレッドであり、非常に優れたパフォーマンスを備えています。

?

Swoole は、ネットワーク サーバー/クライアント機能を提供することに加えて、タスク非同期タスク マネージャーも提供します。これにより、プログラム内の特定の処理速度の遅い関数を非同期で実行できるようになります。

?

この記事では swoole 拡張機能の使用方法について説明します。

?

ステップ 1 インストール

swoole は Linux/FreeBSD/Mac のみをサポートします。Windows システムを使用している場合は、仮想マシンをインストールしてください。VirtualBox/VMWare も使用できます。次に、仮想マシンに Linux をインストールします。

?

swoole は PHP の公式拡張ライブラリに追加されているため、Linux システムで

を実行するだけで済みます。

?

pecl install swoole
ログイン後にコピー

?

インストールの準備ができました。インストール後、php.ini を変更し、extension=swoole.so を追加します。次に、php -m または phpinfo を確認して、swoole が表示されればインストールは成功です。

?

2 番目のステップは、サーバー プログラムを作成することです

PHP スクリプト ファイルserver.php を作成します。コード内容:

?

$serv = new swoole_server("127.0.0.1", 9501);
$serv->on('connect', function ($serv, $fd){
    echo "Client:Connect.\n";
});
$serv->on('receive', function ($serv, $fd, $from_id, $data) {
    $serv->send($fd, 'Swoole: '.$data);
});
$serv->on('close', function ($serv, $fd) {
    echo "Client: Close.\n";
});
$serv->start();
ログイン後にコピー

では、次を実行します:

?

php server.php
ログイン後にコピー

?

サーバーに接続するには Telnet を使用しますか?

telnet 127.0.0.1 9501
> hello world
> Swoole: hello world
ログイン後にコピー

?

非常に簡単ではありませんか? わずか 11 行のコードで、基盤となるネットワークを介してデータを送受信する非同期の高同時実行 TCP サーバーが作成されます。次のステップでは、インスタント チャット、ファイルの送受信、通信など、やりたいことを実行できるようになります。

?

?

?

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート