ホームページ  >  記事  >  PHPフレームワーク  >  swooleクライアントの用途は何ですか?

swooleクライアントの用途は何ですか?

(*-*)浩
(*-*)浩オリジナル
2019-12-02 13:43:563057ブラウズ

swooleクライアントの用途は何ですか?

PHP は一般にソケットを使用して TCP 接続を作成し、CURL を使用して HTTP 接続を作成します。操作を簡略化するために、Swoole はクライアント関数を実装するための Client クラスを提供し、非同期非同期を追加します。 -ブロッキング モード。ユーザーはクライアント側でイベント ループを使用できます。 (推奨学習: swoole ビデオ チュートリアル )

クライアントとして、Swoole クライアントは FPM 環境または Apache で使用できますが、Async 非同期モードは許可されず、非同期モードのみを使用します。 -ブロッキング モード、非同期ノンブロッキング モードは CLI モードでのみ使用できます。

Client は、TCP/UDP ソケット クライアントのカプセル化コードを提供します。これを使用するには、新しい Swoole\Client のみが必要です。

PHP が提供するストリーム ファミリ関数と比較した、Swoole のソケット クライアントの利点は何ですか?

ストリーム関数にはタイムアウトトラップやバグがあり、適切に処理しないと長時間サーバーがブロックされてしまいます。

stream と fread には 8192 の長さ制限があり、UDP の大きなパケットはサポートできません。

swoole_client クライアントは waitall をサポートしており、パケット長がわかっている場合はループせずに一度に取得できます。

swoole_client は UDP パケット文字列の問題を解決するための UDP 接続をサポートします。

swoole_client は純粋な C コードです

swoole_client は非同期のノンブロッキング コールバックをサポートします

# #Constructor メソッドのコンストラクター

Swoole の Client 関数は swoole_client クラスとしてカプセル化されており、新しい swoole_client を通じてクライアント インスタンスを作成できます。

プロトタイプ

swoole_client->__construct(
  int $sock_type, 
  int $is_async = SWOOLEL_SOCK_SYNC, 
  string $key);

パラメータ

パラメータ 1: int $sock_type

$sock_type はソケットを表しますtype の場合、swoole が提供するマクロを使用してタイプを指定できます。

SWOOLE_TCP 创建TCP Socket
SWOOLE_TCP6 创建IPv6 TCP Socket
SWOOLE_UDP 创建UDP Socket
SWOOLE_UDP6 创建IPv6 UDP Socket
SWOOLE_SSL 开启SSL加密
SWOOLE_KEEP 开启连接复用

SWOOLE_SSL と SWOOLE_KEEP は単独で使用できないため、最初の 4 つのオプションと併用する必要があります。

rree

以上がswooleクライアントの用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。