1

nhibernateとSQLサーバーを使用するasp.net-mvc3Webサイトがあります。バランスの取れた負荷がかかっている2つのWebサーバーがあります。これは読み取りが多いデータベースです(書き込みパフォーマンスにはそれほど関係ありません)が、クエリがますます複雑になるにつれて(多くのテーブル結合)、パフォーマンスが大幅に低下します。

私が読んだコメントに基づくと、最大の勝利は分散キャッシュを前面に置くことです。nhibernateをサポートするWindowsの無料オプションを探したところ、NCacheExpressが見つかりました。私は明らかにたくさんのテストと遊びをするつもりですが、このエクスプレスバージョンが実行可能なソリューションの観点から私を制限するかどうかを(多くの時間を無駄にする前に)見たかったのです。ここにバージョン比較が表示され、ブロッカーは表示されないと思いますが、nhibernateでNCache Expressを使用したことがある人からフィードバックを受け取り、問題がないかどうかを確認したいと思います。

また、この問題をより効率的に解決するための代替製品の提案があれば、それも素晴らしいでしょう。

4

4 に答える 4

1

前に述べたように、最初にデータベースを最適化する必要がありますが、もちろん、すでにそれを行っています。

また、2台のサーバーを備えたWebサイトで作業しており、 MemcacheDで解決したキャッシュプロバイダーを選択する過程にあります。非常に堅牢で、セットアップも非常に簡単です。NCache Expresseも正常に動作し、ミステリーはありませんが、NCache Expressには2つのサーバー制限があるため、Memcacheを使用することをお勧めします。したがって、追加のノードを追加する必要がある場合は、とにかく変更する必要があります。

また、サーバーにWindows 2008が搭載されている場合は、MicrosoftのAppFabricを確認する必要があります。これは非常に優れています。

于 2012-01-27T16:25:32.120 に答える
1

これを使用して、NCacheが提供する必要のある機能(SQLの依存関係など)を評価します http://www.alachisoft.com/ncache/edition-comparison.html

それ以外はアップグレードする必要はないと思います

代替案に関しては、私はあまり使用していないので、この点については何も言えません:)

PS:レプリケートは、読み取りを多用するアプリケーションには最適で、書き込みを多用するアプリケーションには適していません。

于 2012-05-04T05:27:10.323 に答える
0

nhibernateの第2レベルのキャッシュとしてappfabricを試すことができます。ただし、アプリケーションノードとは別のサーバーで実行する必要があります。

于 2012-01-22T17:16:28.487 に答える
0

Microsoft Velocityを試しましたか?

http://msdn.microsoft.com/en-us/magazine/dd861287.aspx

于 2012-02-02T12:32:10.177 に答える