SMProxy (Swoole MySQL Proxy) は、MySQL プロトコルに基づいて Swoole によって開発された MySQL データベース接続プールです。
原理
データベース接続はオブジェクトとしてメモリに保存され、ユーザーがデータベースにアクセスする必要がある場合、新しい接続を確立する代わりに、確立されたアイドル状態の接続オブジェクトが初めて確立されます。接続プール。 使用後、ユーザーは接続を閉じず、次のリクエストに備えて接続を接続プールに戻します。接続の確立と切断は、接続プール自体によって管理されます。
同時に、接続のパラメータを設定することで、接続プール内の接続の初期数、接続の上限と下限、各接続の最大使用数、最大アイドル時間などを制御することもできます。プール。 独自の管理メカニズムを通じてデータベース接続の数や使用状況などを監視することもできます。最大接続数を超えると、コルーチンは一時停止され、接続が閉じられるまで待ってから、コルーチンを再開して操作を続行します。
特性
読み取りと書き込みの分離をサポート
データベース接続プールをサポートし、PHP によって引き起こされるデータベース接続のボトルネックを効果的に解決できます。
SQL92標準をサポート
コルーチンスケジューリングを使用する
複数のデータベース接続、複数のデータベース、複数のユーザー、柔軟なマッチングをサポート
MySQL ネイティブ プロトコル、クロス言語、クロスプラットフォームのユニバーサル ミドルウェア エージェントに準拠
MySQLトランザクションのサポート
HandshakeV10プロトコルをサポート
MySQL5.5~8.0と完全互換
主要なフレームワークと互換性があり、シームレスにパフォーマンスを向上させます