データベースにある2つの値があり、アプリケーションに多すぎる動作が定義されていますが、近い将来は変更されません。静的変数を作成して、アプリケーションのGlobal.asax
に値をロードするのが最善の方法ですか?キャッシュ内のデータベースからすべてのアプリケーションに値をロードするための推奨事項
答えて
通常、値/データが期限切れになることがわかっている場合や一定期間後に変更が必要な場合は、静的変数を使用してください。私はプロパティを使用してアプリケーションの開始までに一度、データベースからその値を設定しますあなたのこれらの定数の設定を静的クラスを作成することをお勧め同様の議論HttpRuntime.Cache[] vs Application[]
はまたASP.NET Caching: Techniques and Best Practices
はい、静的変数にキャッシュできます。しかし、今は変更する必要がなく、同じままにしておくと、それらを定数またはweb.configで定義してください。
をチェックアウトしました。
データベースに格納されている「システム」設定があるときはいつでも同じことをしています。私はそれらをプロパティとして静的なクラスに保ち、常にアクセスします。また、データベーストラフィックを減らすために頻繁には使用されないが、頻繁に使用されない小さなテーブル(つまりアイテムグループ)の内容にも同じ手法を使用します。私は読み取り専用のコレクションを作成し、常にデータベースにアクセスする代わりにアクセスします。
しかし、清潔で維持しやすいものであれば、何が最良のものであるかの問題です。
個人的に私のMVCサイト(私が好むものはninject)に依存性注入を使用します。これにより、変数を.InSingletonScopeとして定義することができます。これは、アプリケーションで厄介な統計をぶら下げる必要がないことを意味します。私は最初の要求でDBから値をロードし、それをローカル変数に格納し、それをうまく整理します。
つまり私はこれを使用します。それはバインド
public class CachedFooProperty : IFooProperty
{
public CachedFooProperty(IRepository<Foo> fooRepo)
{
Foo = fooRepo.GetFoo();
}
public Foo Foo{get;private set;}
}
して、このように:
Bind<IFooProperty>().To<CachedFooProperty>().InSingletonScope();
物事のこの方法のいいところは、上とキャッシュオフにするためにその本当に簡単です。バインディングを変更するだけです。設定を使用するすべての場所を変更せずに、web.configベースのconfigメソッドに変更することもできます。
- 1. FullCalendar - データベースのタイムゾーンを保存するための推奨事項
- 2. アーキテクチャサブアプリケーションを使用したWebアプリケーションの推奨事項/推奨事項
- 3. Pythonクロスプラットフォームリスナーサーバのための推奨事項
- 4. C#データベースアクセスのための推奨事項
- 5. linux hostingのための推奨事項
- 6. アプリケーション/ GUIフレームワークの推奨事項
- 7. Perlを学習するための推奨事項?
- 8. WPFでログウィンドウを作成するための推奨事項
- 9. Sweave文書を開発するための推奨事項
- 10. Firebaseデータベースデザインの推奨事項
- 11. Excelチャートコンポーネントの推奨事項
- 12. Webアプリケーションデプロイメントアーキテクチャの推奨事項
- 13. ソケットの推奨事項
- 14. jQuery FileManagerの推奨事項
- 15. jQueryナビゲーションメニュープラグインの推奨事項
- 16. IoTデバイスの推奨事項
- 17. バーチャルキーボードの推奨事項(JavaScript)
- 18. プロジェクトコラボレーションツールの推奨事項
- 19. JavaScriptスタイルの推奨事項
- 20. HL7インターフェイスエンジンの推奨事項
- 21. コード署名Windows Mobileアプリケーション - 推奨事項?
- 22. うわべのUbuntu + Railsサーバーに関する推奨事項
- 23. マインド推奨のためのメモリ内データベース
- 24. FlashからHTML5への変換に関する推奨事項
- 25. Androidにリクエストコード値の推奨事項はありますか?
- 26. C Profilersに関する推奨事項?
- 27. Android Appに関する推奨事項
- 28. Adobe AIRのゲームを書くための推奨事項
- 29. Laravelを使用したWebアプリケーションの推奨事項
- 30. .tgzファイルからファイルを抽出する際の推奨事項