我正在尋找有關我應該在哪裏存儲應用程序配置數據和默認文本值的反饋,這些數據將具有最佳性能。例如,我一直堅持像默認URL值和web.config中的錯誤消息或應用程序指令的默認文本,但現在我想知道這是否會擴展....如果它甚至是正確的事情首先要做的事情。哪些性能更好 - 在AppSettings或數據庫中配置?
回答
如果是單個服務器設置(而不是Web場),則將其存儲在Web.Config文件中。還有就是Web場框架的新版本,你可以查看詳細信息,該類型的場景在這裏:
http://weblogs.asp.net/scottgu/archive/2010/09/08/introducing-the-microsoft-web-farm-framework.aspx
如果數據庫是在同一臺機器的性能差異可能會忽視,能。如果您需要通過電線連接到某個數據庫,那麼它很可能會比較慢,那麼可以直接訪問而不是太大的web.config。
我真的希望在這裏保持簡單,只需使用web.config即可。它可能已經被一些系統組件緩存在內存中。如果你覺得它太慢測量它,然後可能會去一個更復雜的解決方案。
話雖如此,你可以簡單地讀取應用程序啓動時的所有配置並將其保存在內存中。這樣,任何性能差異都會緩解到應用程序的啓動時間。您還可以在啓動時驗證配置文件。
不確定您的默認設置,只是問問自己他們是否特定於環境,是否真的想要更改而不需要重新編譯。作爲配置文件,用例是什麼?一些操作人員或開發人員是否會設置這些默認設置?你打算記錄它們嗎?你打算讓你的應用程序對任何配置都健壯嗎? 這些默認設置將用於多個環境/安裝(例如用於本地化)嗎?那麼也許最好使用不同的獨立文件,在需要時可以單獨重新部署。
設置多久會發生變化?
如果他們永遠不會改變,你可以將它們放在web.config中,並配置IIS,以便它不監視文件的變化。這將會導致一個小的啓動罰款,但在此之後,不應該有性能損失。
但說實話,大概有幾十個其他地方,以提高你開始擔心在此之前 - 還記得,「Premature Optimization is the root of all evil」 :)
正如前面提到的,這實在不應該事 - 設置,無論是在web.config或數據庫中,應該是「只讀」,然後緩存,所以這真的不重要。
我幾乎可以保證你的代碼的其他部分會比這慢得多。
作爲一個側面說明,而不是性能相關的,但是如果你需要擔心的網站的正常運行時間,你可以在飛行數據庫編輯配置,但改變的web.config將導致AppDomain重新啓動和隨後會議的損失。
好吧,只是要清楚...我並不擔心這一點,因爲我只是在尋找有關其他人如何存儲其配置數據的反饋。在初始載荷和後續載荷過程中,性能的差異會對我有什麼影響。這個問題不關心我的代碼的其他部分,因爲它最後加起來......對吧? – Cognitronic 2011-01-21 16:13:03
- 1. 哪種數據庫性能更好?
- 2. 哪些jQuery選擇器性能更好?
- 3. 重複數據或更好的性能?
- 4. 性能明智:哪個更好Laravel數據庫
- 5. 實現更好的數據庫性能
- 6. 在PHP中哪個性能更好?
- 7. 數據庫中存儲的Drupal性能設置在哪裏?
- 8. 哪些無模式數據存儲提供良好的性能?
- 9. 在Lucene或SQL中性能更好
- 10. 哪種情況下性能更好
- 11. 哪些數據庫可以更好地用於pyqt應用
- 12. 更新MPAndroidChart中的數據有哪些性能瓶頸?
- 13. 哪給了我更好的性能Activerecord find_by或者哪裏?
- 14. 哪個更好的數據庫設計?
- 15. 數據庫 - 哪個更好,爲什麼?
- 16. 數據庫設計 - 哪一個更好?
- 17. 哪些數據庫模式更可取?
- 18. 將數據保存在XML或數據庫中會更好嗎?
- 19. 配置數據庫或文件中的數據
- 20. 哪個更好刪除數據庫或刪除表?
- 21. 哪個更好的SQL數據庫或json文件?
- 22. 哪個具有更好的性能,Java或DB功能?
- 23. 哪些標籤不在數據庫中?
- 24. 哪些SQL查詢會有更好的性能?
- 25. 配置文件或數據庫?
- 26. 哪個具有更好的性能,庫中的符號或這些符號的導出圖像?
- 27. 將圖像文件或URL存儲在MySQL數據庫中?哪個更好?
- 28. 將值存儲在web.config中 - appSettings或configSection - 哪種效率更高?
- 29. 在會話或數據庫中存儲Viewstate有哪些缺陷
- 30. 哪種數據庫最好
大多數設置可能不會更改太頻繁,但多久未知。正如我下面所說的,我不是「擔心」這個......我只是在尋找關於這個問題的反饋。 – Cognitronic 2011-01-21 16:15:35