2010-08-24 24 views
5

Tôi gặp vấn đề về bộ nhớ trên trang web của mình và đang cố gắng truy cập vào phần cuối của trang web. Tôi đã tải về bản dùng thử 14 ngày của ANTS Memory Profiler và đã chơi với nó để nắm bắt những gì nó nói với tôi. Trong các tùy chọn bộ nhớ trên dòng thời gian, tôi có thể thấy Bytes in All HeapsPrivate Bytes v.v. nhưng tôi không chắc mình nên tập trung vào bộ nhớ nào và không quay trở lại.ANTS Memory Profiler - Tôi nên xem bộ nhớ nào?

Tôi đang định hình một trang web ASP.NET bằng ASP.NET 2.0.

Ai đó có thể tư vấn cho bạn?

+0

Cảm ơn XIII, đã không nhận ra có một nhóm cho red-gate-kiến – webnoob

Trả lời

5

Byte trong tất cả các heap sẽ bao gồm tất cả các đối tượng .net của bạn, trong khi byte riêng cũng sẽ bao gồm các đối tượng non-.net (vì vậy nếu bạn sử dụng bất kỳ đối tượng COM nào). Tôi sẽ bắt đầu bằng cách tập trung vào các đối tượng được quản lý (vì vậy byte trong tất cả các đống), trước khi lo lắng về bức tranh tổng thể.

+0

Tôi đang sử dụng rất nhiều tệp XML trên trang web, điều này có nằm trong Private Bytes không? Tôi hỏi vì tôi hầu như không nhìn thấy bất cứ điều gì di chuyển trên Bytes trong Tất cả đống - đường bằng phẳng ở dưới cùng hầu hết thời gian. Dòng Private Bytes dường như tăng lên khi tôi làm điều gì đó truy vấn một tệp XML. – webnoob

+0

@webnoob mà tất cả phụ thuộc vào mã bạn đã sử dụng để xử lý XML của bạn - nó sẽ có thể làm điều đó với mã được quản lý (tức là .Net) hoặc cũng thông qua các đối tượng COM. Với ANTS, bạn có thể xem các đối tượng mới trong bộ nhớ giữa hai ảnh chụp nhanh, vì vậy bạn sẽ có thể xem những đối tượng nào đang sử dụng bộ nhớ. Tuy nhiên, hãy cẩn thận để không tối ưu hóa quá mức, lần đầu tiên một hành động xảy ra, có thể có phân bổ thiết lập ban đầu, vì vậy hãy tập trung vào các rò rỉ nhất quán trên các lần lặp lại thứ 2, 3, 4, –

+0

Ok. Cảm ơn. – webnoob

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