1

ravendb ベースのセットアップに関連するアーキテクチャに関する質問があります。

私は次のものを持っています:

ravendb -> wcf サービス -> (web/iphone/android)

Web/iPhone/Android レベルには、実際には (現時点では - これは増加しています) 7 つの wcf サービスへの接続があります。

現時点では、7 つのサービスが同じ ravendb と通信しています。これは、同じインスタンス上にある必要がないため、将来のリファクタリング ブリッツでセグメント化される可能性があります。

私の質問はこれです:

memcached の使用を検討しています - どの時点で (これをセットアップした経験がほとんどありません) memcached を使用できますか?

ravendbとwcfの間?wcf と (web/iphone/android) の間?

すべての間?

古いデータの問題が発生する可能性はありますか? これは大事にされていますか、それとも物事を単純化しすぎていますか?

4

2 に答える 2

4

多くの人が言うように: 時期尚早の最適化はすべての悪の根源です (そして、彼らはすべて Donald Knuth を引用していると思います)。そのため、何かをする前にパフォーマンスの問題が発生したときは待ってください (システムがクラッシュするのを待つ必要はありません。リソースの使用率が 90% になるまで待ちます)。

そうは言っても、キャッシュされたデータが無効化される前に使用することが予想される場合は、memcached (またはその他の種類のキャッシュ) を使用する必要があります (改善要因は、操作コストや頻度などの他の多くの要因によって変わります)。データがアクセスしたもの)

リソースを最も節約する場所に依存する「場所」の質問に答えるには、実際にはアプリケーション固有であり、ここでは答えられません。

于 2011-01-23T10:35:28.553 に答える
0

追加のポインターとして、RavenDB REST インターフェイスは ETag を使用して HTTP ベースのキャッシュ機能をサポートします。HTTP クライアントがこれらのメカニズムでうまく機能する場合は、すぐに使用できる優れたキャッシュが用意されています。

これがWCFスタックでどのように機能するかはわかりませんが、

于 2011-01-23T10:43:45.587 に答える