2

注:意見としてではなく質問としてもっと尋ねようとするため、この質問を編集しました。

私たちのアプリケーションは、Linux で Java、JBoss、および MySQL を使用して開発されているマルチテナント アプリケーションです。

アプリケーションがマルチテナンシーの場合、顧客ごとに 1 つのインスタンスを起動する必要がありますか、それともすべての顧客に対して 1 つのインスタンスを起動する必要がありますか?

すでにインスタンスがあるのに、いつ、なぜ新しいインスタンスを起動する必要があるのでしょうか?

感謝をこめて

4

2 に答える 2

1

質問が少し独断的すぎる可能性があるため、これはここでは素晴らしい質問ではありません。しかし、あなたが書いたことについていくつかの考えを述べます。

  1. 1 つの顧客を 1 つのインスタンスに限定すると、フェイルオーバーが発生しません。インスタンスに障害が発生した場合、インスタンスを再起動または再起動できるようになるまで、アプリケーションは停止します。

  2. フェイルオーバーと負荷分散を備えた複数の顧客 (それぞれ 2 ~ 4 個のインスタンス) をホストできるクラスターの構築を検討する必要があります。(おそらくマルチ AZ RDS を使用して mysql をホストすることもできます)

  3. 顧客固有の構成は、JBoss から何らかの形でアプリケーションに移行する必要があります。プラットフォームの詳細がわからないため、詳細を提供できません。

于 2013-06-26T13:50:22.417 に答える
1

顧客ごとに 1 つのインスタンスを起動するかどうかは、提供するソリューション、要件、負荷、および使用するマルチテナント戦略に完全に基づいています。決まった答えはありません。

すべてのテナントの負荷を 1 つのインスタンスで維持でき、テナントごとのリソース使用量を気にする必要がない場合は、1 つのインスタンスで十分です。もちろん、高可用性を計画します。これは、データベースの設計と SaaS セットアップのスケーラビリティに関する他のユーザーの質問に対して私が提供したいくつかの回答です。お役に立てば幸いです。

クラウド上でエンタープライズ Web (RIA) アプリケーションを構築するためのデータベース アーキテクチャ (単一のデータベースとクライアント固有のデータベース)

SaaS成熟度モデルレベル4のテナントロードバランサーの解説

SaaS ベースのオンライン ポータルのアーキテクチャ

于 2013-07-02T03:45:09.220 に答える