ホームページ >バックエンド開発 >PHPチュートリアル >PHP TCP 長い接続拡張機能: Foolsock
foolsock は、RPC 通信で TCP ロングコネクションを実装するために開発された PHP 拡張機能です
PHP 多くのプロジェクトは、ビジネス規模の拡大に伴い (特に端末数が多い場合) 徐々にサービス指向に進化しています。モデルは、比較的独立した、または時間のかかるビジネスを別のサービス (ユーザー モジュールなど) に抽象化し、c/c++ や golang などのより効率的な言語を使用して特定のビジネス レイヤー (Web ページやモバイル端末など) を処理することです。各サービスを呼び出すこのアーキテクチャにより、さまざまなビジネス間の結合が大幅に削減され、モジュールの再利用性が最大化されます。
ビジネス層とバックエンド サービスの間の通信プロトコルでは、http は効率的な RPC プロトコルではありません。実際、PHP には良い例を提供してくれる拡張機能が数多くあります。mysql、memcached などが最も一般的な「サービス」であり、それらのクライアント処理メソッドを完全に採用できます。
mysql や memcached などの拡張機能はすべて、サーバーとの通信に TCP を使用するため、興味のある学生はソース コードを確認することができます。
プロトコル処理も mysql や memcached などの PHP 拡張機能にカプセル化されている場合、追加サービスごとに拡張機能をインストールする必要があることを意味します。これはメンテナンスにとって非常に不利であり、開発効率も低下します。
foolsock はソケットの単純なカプセル化を実行し、接続をpersistent_list ハッシュ テーブルに配置します。各 fastcgi プロセスは接続後に解放されず、次のリクエストに直接使用されます。現在の最大接続数は、fastcgi プロセスの数と同じです。もちろん、接続プールの効果を得るために自分で変更することもできます。
foolsock を使用すると、プロトコル関連のロジックを php で実装することもでき、開発コストを大幅に削減できます。
インストール从github下载源码后解压cd foolsockphpize./configuremake && make install最后将extension=foolsock.so加入php.ini,重启php-fpm或者其他fastcgi
http://www.open-open.com/lib/view/home/1441013134862