Solaris で Tuxedo 11.1 を使用する....
質問は、サーバーごとにサービスを分離するときのパフォーマンス/管理に関する考慮事項です。約 250 のサービスを 11 のサービスとして提供される 11 の状況に削減しようとしている開発ギグがあります。アイデアは、大まかに同じ顧客情報を返す重複したサービスが豊富にあるということであり、この「カスタマイズ」のオーバーフロー (主にサブスクライバーの特定のニーズを満たすために行われる) を多くの顧客の状況 ( 「連絡先情報についてすべて教えてください」、「他の人との関係についてすべて教えてください」など)。これらのサービス状況では、より多くのデータが配信され、明らかにより多くの呼び出しが 1 つのボトルネック (水平方向にスケーリングする必要があります) に集中する可能性があります。たとえば、「顧客 ID を取得する」などのサービスがあります。3 つのドメイン間で (同じデータベースに対して) 1 秒間に 20 回 (平均 20 ミリ秒) 呼び出されます。誰かの「識別」を取得すると、戻り値が多少ポリモーフィックであるにもかかわらず、20 の異なるフレーバーを持つことができます (あちこちに余分なプロパティがあるかもしれませんが、基本情報は同じです)。
これらの 11 の状況/サービスをパッケージ化する最善の方法は何ですか? それらのすべての情報を単一の Tuxedo サーバーに配置し、特定のサービス (おそらく単一のサービス) を持つインスタンスを切り出します。それとも、読みやすさのためにサーバーごとに 1 つのサービスですか? 単一のサーバーにすべてを積み上げた場合、クロプティング時のメモリ ヒットはどれくらいですか? クロプされているサービスだけがメモリに置かれますか、それともサーバーに定義されたすべてのものですか? 私たちにとって深刻な問題ではありませんが (私たちの公園の大きさを考えると)、好奇心旺盛です。
大まかな概算 (開発がどのように実装されているかについての詳細な知識がない場合) は、サービスが 20 c/s * 20 (今日のさまざまなフレーバー) * 3 (ドメイン) = 1 秒あたり 1200 の呼び出しを処理する必要がある可能性があるということです。;-)