2009-08-20 31 views
9

Tôi có một số appSettings trong web.config được sử dụng thường xuyên (tức là trên mỗi bài đăng trở lại). Liệu ConfigurationManager có giữ các giá trị này trong quá trình hoặc có bất kỳ lợi ích hiệu năng nào có được bằng cách sao chép các giá trị này vào trạng thái ứng dụng trên ApplicationStart() và sau đó lấy chúng từ đó?ASP.NET Web.config AppSettings Hiệu suất

Trả lời

9

AFAIK cấu hình được đọc và phân tích khi khởi động và dữ liệu được giữ trong bộ nhớ sau đó. Tôi không tin rằng bất kỳ hiệu suất đạt được từ bộ nhớ đệm nhà nước trong các biến ứng dụng sẽ là đáng kể - mặc dù bạn có thể có được khả năng đọc được cải thiện khi bạn không xả rác mã với ConfigurationManager.AppSettings[...].

+0

Cảm ơn thông tin. Tôi sử dụng phương pháp phổ biến của riêng tôi để truy cập trạng thái, vì vậy, "rác" sẽ chỉ ở một nơi. :-) –

+0

Điều gì về các tuyên bố được thực hiện bởi bài viết này: http://www.dotnetperls.com/appsettings-cache Họ tuyên bố nó là 30 lần nhanh hơn để cache các cài đặt này. –

+0

@ James Reategui: Không biết - Tôi ngạc nhiên, và tôi không biết chính xác những gì họ đang đo. Vấn đề là - bạn có khả năng đọc những giá trị này trong một vòng lặp chặt chẽ? Nếu vậy, bạn có thể chỉ cần đọc từ các thiết lập vào một biến địa phương, và đó sẽ nhanh hơn các thuộc tính trong một lớp tĩnh ... –

Các vấn đề liên quan