2012-02-21 9 views
2

私はトラフィックの多いJava Webアプリケーションを開発しています。現在私はそのアーキテクチャを定義しています。私はいくつかの質問があります:トラフィックの多いJava Webアプリケーションで負荷を処理する方法は?

  • 負荷を処理するアーキテクチャを設計する際に考慮すべき重要な要素は何ですか?
  • ウェブアプリケーションがダウンするのを防ぐ方法、または高可用性を確保する方法を教えてください。

一度に何百というユーザーがログインすることが予想されます。私はデータベース内の検索を避けるために、アプリケーションスコープ(静的変数)にデータを保持する予定です。セッションでは、5kBのデータを保存する予定です。

答えて

1

私が検討する主要な要素を推測するには、次のようになります。

  • あなたは気づいアプリサーバをクラスタ化は必要ですか?
  • ハードウェアまたはソフトウェアベースのロードバランサが必要ですか?
  • サーバーの正常性を判断するために記録するパラメータは何ですか?
  • DBの負荷を分散しますか?
  • あなたのアプリはI/Oに重いですか? CPUが重い?どちらも?
  • 多くのウェブトラフィックを利用しようとしていますか?ユーザーあたり5Kのデータを平均している場合、リンクが飽和しているとみなす前に、何人のユーザーを処理できますか?
  • スケールアウト対スケールアウト。あなたのアプリが一番うまくいくかを判断し、それを悪用してください。
  • 多くのDBトランザクションがありますか?
  • 共有ストレージを使用しますか?

これが役立ちます。

0

スケーラビリティは、増加するトラフィックを処理することが期待されるシステムにとって非常に重要です。また、ステートレスなシステムを実装するにはステートレスが非常に重要です。チェックアウトhttp://www.playframework.org/、ステートレスWebフレームワーク。 mongodbでplayframeworkを使用すると(PlayMorphiaモジュール経由で)、スケーラブルなWebアプリケーションを簡単に実装できます。

+0

削除/間違った投稿。 – Carlos

関連する問題