3

よろしくお願いします。

まず第一に、スケーラビリティとは、サービスの需要がどのようなものであれ、大幅に増加しても変わらないシステムを設計する能力であると考えています。ハードウェアを追加する必要がありますか (垂直方向または水平方向0?) システムは準備ができており、それに対処するように設計されているため、必要に応じて追加してください。

私の質問は、尋ねるのは簡単ですが、答えるのはおそらく非常に複雑です。ヒット数と同時に実行されるセッション数の両方で、フレームワークがそれに応じてスケーリングされることを確認するために、フレームワークで何を調べているかを知りたいです。

この質問は、テクノロジーや特定のフレームワークに関するものではなく、理論的な質問です。

それは、優れたデータベース設計とレプリケーションなどの背後にある適切なハードウェアに大きく依存していることを知っています...これがすべて存在すると仮定しましょう。しかし、私のフレームワークはいくつかの基準を満たす必要があります。

  • memcache を提供しますか?
  • 複数のマシンで (Web サーバー レベルで) 実行し、多くの複製されたデータベースを使用する機能はありますか? しかし、それを可能にするソフトウェアには何が含まれているのでしょうか?
  • 等...

答えを特定のプログラミング言語や背後にある技術に関連付けないでください。

再度、感謝します、

D.

4

2 に答える 2

2

スケーラビリティは、何よりもユースケースに依存すると思います。大量のデータを期待する場合は、データベースに焦点を当てる必要があります。トラフィック、サーバー、新機能の追加、データに焦点を当てる必要があります。使用しているモデルとフレームワーク...

Twitterのようなマイクロポストサービスを大学のWebサイトやGoogleDocsのようなWebサービスと比較すると、まったく異なる要件が見つかります。

于 2012-08-12T09:43:15.663 に答える
0

まず第一に、スケーラビリティの一般的な概念は、ハードウェアリソース(CPU、メモリ、帯域幅など)が追加された場合に、スループットまたは容量を向上させるソフトウェアの機能です。
リソースの増加で改善されないソフトウェアはスケーラブルではありません。
定義から抜け出すと、あなたの質問は、ソフトウェアのスケーリング能力に影響を与える可能性のある、実装に導入することを計画しているフレームワークの評価に関連していると思います。
フレームワークを導入するときに評価する最も重要な要素は、その中に隠されたシリアル化があるかどうかを確認することです(つまり、効果のシリアル化はソフトウェアに転送/影響します)
したがって、アプリケーションにシリアル化を導入するフレームワークを導入すると、能力に影響を与える可能性がありますスケーリングします。
評価する方法は?

  1. 注意深いソースコード検査(オープンソースの場合)
  2. フレームワークを構築する人によって提供されるパフォーマンス保証はありますか?
  3. 自分で測定を行って、このフレームワークの導入がパフォーマンスにどのように影響するかを確認し、満足できない場合は交換してください
于 2012-08-12T09:51:06.407 に答える