新しいcassandraノードを追加した後、cassandra接続で奇妙な問題に直面しています。
ノードを追加する前の状況:
- データセンター 1 のサーバー 1 に 1 つの cassandra ノード
- 多くのマシンに分散された完全に機能する Java アプリケーション
- データセンター 1 のサーバー 1 上の PHP nginx Web サーバー
- 完全に機能する PHP アプリケーション (結果表示用)
次に、データ センター 2 に 2 番目のストレージ サーバーを追加しました。両方のストレージ サーバーのレプリケーション係数は 1 です (すべてのデータは両方のサーバーにあります)。したがって、キースペースを変更しました。その結果、データはスムーズに同期され、その有効性は Datastax Devcenter アプリで確認されました。
ノードを追加した後の状況:
- データセンター 1 のサーバー 1 に 1 つの cassandra ノード
- データセンター 2 のサーバー 2 に 1 つの cassandra ノード
- 多くのマシンに分散された完全に機能する Java アプリケーション
- データセンター 1 のサーバー 1 上の PHP nginx Web サーバー
- PHP アプリケーションが例外でクラッシュします:
All connections on all I/O threads are busy
..すべての接続が利用可能であっても。
次に試したこと:
- Github Datastax PHP コード サンプルをダウンロードしました
- コンソールphpコマンドを介してコードからこの部分を実行すると、うまくいきました
- nginxを介してブラウザで同じコードを実行すると、再び受信しました
All connections on all I/O threads are busy
nginx 構成または PHP webapp で何も変更していません。キースペースと同期サーバーを変更しました。
その「接続がビジー」エラーを取り除く方法はありますか?