2017-01-25 6 views
0

私はあなたの意見、最高の考えに興味があります... あなたが知っていても、いつでもデータベースを照会する方が良いでしょうか?それは静的になります)、またはサーバー(Web)のセッションメモリにデータを保存しますか?SQL - メモリにロードする、またはデータベースを照会する

一方で、メモリに格納するとデータの処理が高速になり、SQLサーバーの負荷が軽減されます。一方、アプリケーションコードやWebサーバー/システムリソースの複雑化を幾分増やす可能性があります。

+1

静的データの場合は、レイジーロードを考慮してください。静的でないデータの場合は、最終更新日の比較を検討してください。 – user5226582

+1

キャッシュフレームワークを使用しても複雑さは増えません。特に、キャッシュを無効にする必要はありません。 – stuartd

答えて

1

答えは、あなたの特定のニーズに(ほとんどの場合と同様に)依存します。あなたのデータベースが帯域幅を持っていてもあなたのWebサーバーがそうでない場合は、SQLでそれを行うべきです。およびその逆。自分の状況を知らずに誰にでも何かを推薦する方法はありません。

+0

ありがとうございます。これは一般的なベストプラクティスの質問ですので、具体的な状況はありません。 – SlowCoder74

1

スタティック・ディクショナリを使用して、データベースから静的データを格納できます。

これは、各辞書のインスタンスが1つのみで、データベースへの要求数を減らすことができます。

これを実装する方法については、this questionを参照してください。

+0

データが変わるとどうなりますか?キャッシュされたデータをリロードする方法をアプリはどのように知っていますか?テーブルが更新されたかどうかを判断するためのデータベースへのクエリ?私は、検索するテーブルのデータがたくさんある場合はこれが良いと思いますが、データの小さな塊が心配されている場合はそれほど多くはありません。 – SlowCoder74

+1

実際、これは例えば国名のような静的なデータの小さなチャンクでは役に立ちます。 –

関連する問題