中国語 | 英語
/$$$$$$ /$$ /$$ /$$$$$$$
/$$__ $$| $$$ /$$$| $$__ $$
| $$ __/| $$$$ /$$$$| $$ $$ /$$$$$$ /$$$$$$ /$$ /$$ /$$ /$$
| $$$$$$ | $$ $$/$$ $$| $$$$$$$//$$__ $$ /$$__ $$| $$ /$$/| $$ | $$
____ $$| $$ $$$| $$| $$____/| $$ __/| $$ $$ $$$$/ | $$ | $$
/$$ $$| $$ $ | $$| $$ | $$ | $$ | $$ >$$ $$ | $$ | $$
| $$$$$$/| $$ / | $$| $$ | $$ | $$$$$$/ /$$/ $$| $$$$$$$
______/ |__/ |__/|__/ |__/ ______/ |__/ __/ ____ $$
/$$ | $$
| $$$$$$/
______/
MySQL プロトコルに基づいて Swoole によって開発された MySQL データベース接続プール。
データベース接続をオブジェクトとしてメモリに保存します。ユーザーがデータベースにアクセスする必要がある場合、新しい接続を確立する代わりに、確立されたアイドル接続オブジェクトが接続プールから取得されます。 使用後、ユーザーは接続を閉じず、次のリクエストに備えて接続を接続プールに戻します。接続の確立と切断は、接続プール自体によって管理されます。
同時に、接続のパラメータを設定することで、接続プール内の接続の初期数、接続の上限と下限、各接続の最大使用数、最大アイドル時間などを制御することもできます。プール。 独自の管理メカニズムを通じてデータベース接続の数や使用状況などを監視することもできます。最大接続数を超えると、コルーチンは一時停止され、接続が閉じられて操作が継続されるまでコルーチンは再開されます。
PHP には接続プールがないため、同時実行性が高いとデータベースが接続でいっぱいになり、たとえばバッチ追加がサポートされていないため、一部の SQL が使用できなくなります。 そこで、接続プーリングと読み取り/書き込み分離のみをサポートするこの軽量ミドルウェアを自分で作成しました。Swoole コルーチンを使用して HandshakeV10 プロトコル転送をスケジュールすると、複雑さが増す Mycat のようなすべての SQL パッケージ本体を解析する必要がなくなります。
あなたのおかげで、SMProxy はここまで到達することができました。
バッカーの皆様に感謝します。[バッカーになる]
スポンサーになることで、このプロジェクトをサポートしてください。あなたのロゴがあなたの Web サイトへのリンクとともに表示されます。[スポンサーになる]