EC2 インスタンスでホストされている Rails アプリで Xeround などの DBaaS (サービスとしてのデータベース) を使用する場合、データベースへの同時接続数を (DB サービスプランの制限に従って) 制限するにはどうすればよいですか? そうする必要がありますか?
ActiveRecord接続プールはプロセスごとでスレッドセーフであることは知っていますが、複数のプロセスがある場合(複数の異なるマシン間でも)はどうなりますか?
EC2 インスタンスでホストされている Rails アプリで Xeround などの DBaaS (サービスとしてのデータベース) を使用する場合、データベースへの同時接続数を (DB サービスプランの制限に従って) 制限するにはどうすればよいですか? そうする必要がありますか?
ActiveRecord接続プールはプロセスごとでスレッドセーフであることは知っていますが、複数のプロセスがある場合(複数の異なるマシン間でも)はどうなりますか?
残念ながら、複数のクライアント (アプリケーション) 間の接続数を正しく制限する方法はありません。ほとんど静的で経験的な唯一の方法は、許可される最大接続数をアプリの数で割り、その結果をアプリケーションごとの接続制限として設定することです。
ActiveRecordデータベース接続を管理するために接続プール基本クラスを使用します。