1

クライアント用の Web フロントエンドを備えた MySQL データベースを構築しています。クライアントとそのスタッフは、この Web アプリケーションを日常的に使用し、年間数千から数十万のレコードを作成します。私は、同じ製品を持ちたいと思っている 2 番目のクライアントを見つけました。おそらく、毎年同じ数、あるいはそれ以上の数のレコードを作成するでしょう。

将来的には、さらに多くのクライアントを獲得したいと考えています。今後数年間で、最大 5 つのデータベースと Web フロント エンドを 5 つの個別のクライアントに対して実行することができました。これらはすべて、おそらく年間数百万のレコードを作成しながら、厳重なセキュリティを必要とします (すべてのデータベース全体で累積的に)。

これらすべてを Amazon の EC2 サービスで実行したいと考えていますが、実行するインスタンスのタイプを決定するのに苦労しています。クライアントごとに 1 つずつ、複数の個別の Linux インスタンスを用意する必要があるのか​​、それとも、すべてのクライアントのデータベースと Web フロント エンドを管理する「大規模な」インスタンスを 1 つ実行する必要があるのか​​ わかりません。

ハードウェア構成は、目の前のタスクにかなり固有であることを知っています。Web フロント エンドは、JQuery を使用して MySQL クエリを「きれいに」作成し、データのグラフ化を (やはり JQuery を使用して) 行う可能性があります。フロントエンドはセキュリティのために SSL を使用しますが、これによりネットワーク速度にオーバーヘッドが追加される可能性があることは理解しています。

この状況についてのあなたの考えを探しています。

ありがとう

4

1 に答える 1

1

利用可能なツールを使用します。Amazon RDS サービスを使用すると、余計な手間をかけずにクラウドで MySQL データベースを実行できます。必要に応じてスケールアップおよびスケールダウンできます。最初は小さく、制限に達したら容量を追加します (追加料金がかかります)。

次に、 SSL 証明書でElastic Load Balancing (ELB)を使用して、SSL 復号化のオーバーヘッドを Amazon サービスにオフロードします。

ウェブアプリに Java を使用している場合は、Elastic Beanstalkを使用してホスティング プロセス全体を処理できます。

実験することを恐れないでください - データを失うことなくインスタンスのサイズをいつでも変更でき (インスタンスが EBS ボリュームから起動する場合)、いつでもインスタンスを作成および削除できます。インスタンスを複数のアベイラビリティーゾーンに分散できるため、多くの場合、水平方向のスケーリングは垂直方向のスケーリングよりも優れています。

幸運を!

于 2011-07-12T12:36:31.683 に答える