Swoole MySQL プロキシ。MySQL プロトコルに基づいて Swoole によって開発された MySQL データベース接続プール。
原則
ユーザーがデータベースにアクセスする必要がある場合、データベース接続をオブジェクトとしてメモリに保存します。新しい接続を確立する代わりに、確立されたアイドル状態の接続オブジェクトが接続プールから取り出されます。使用後、ユーザーは接続を閉じず、次のリクエストに備えて接続を接続プールに戻します。接続の確立と切断は、接続プール自体によって管理されます。
同時に、接続プール内の接続の初期数、接続の上限と下限、各接続の最大使用数、最大アイドル時間などを制御することもできます。接続プールのパラメータを設定します。独自の管理メカニズムを通じてデータベース接続の数や使用状況などを監視することもできます。最大接続数を超えると、コルーチンは一時停止され、接続が閉じられて操作が継続されるまでコルーチンは再開されます。
#特徴
-読み取りと書き込みの分離をサポート-PHP によって引き起こされるデータベース接続のボトルネックを効果的に解決できるデータベース接続プールをサポート-SQL92 標準をサポート-コルーチン スケジューリングを採用-複数のデータベース接続、複数のデータベース、複数のユーザー、柔軟な組み合わせをサポート-MySQL ネイティブ プロトコルに準拠、クロス言語、クロスプラットフォームのユニバーサル ミドルウェア エージェント-MySQL トランザクションをサポート-HandshakeV10 プロトコル バージョンをサポート-MySQL4.1 ~ 8.0と完全に互換性
-主要なフレームワークと互換性があり、シームレスにパフォーマンスを向上させます当初の設計意図
PHP には接続プールがないため、次の場合にデータベースが接続でいっぱいになります。同時実行性が高いと、Mycat やその他のデータベース ミドルウェアによって、一部の SQL が使用できなくなります。たとえば、バッチ追加がサポートされず、肥大化しすぎます。そこで、接続プーリングと読み取り/書き込み分離のみをサポートするこの軽量ミドルウェアを自分で作成しました。これは、プログラムの安定性を高めるために、Swoole コルーチン スケジューリングと HandshakeV10 プロトコル転送を使用します。これにより、複雑さが増します。 。 推奨チュートリアル: 「mysql チュートリアル 」http://www.php.cn/course/list/51.html
#以上がMySQL データベース接続プール SMProxyの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。