Như tôi đã đăng trong Performance drop after 5 days running web application, how to spot the bottleneck?, tôi gặp sự cố với một ứng dụng bị chậm sau khi chạy trong một thời gian.Làm thế nào để sử dụng VisualVM để phát hiện các nút cổ chai/vấn đề
Tôi đã chạy VisualVM và tạo ảnh chụp nhanh giữa các thời điểm khác nhau. Bây giờ ứng dụng thực sự chậm, nhưng tôi không có ý tưởng làm thế nào để phát hiện các nút cổ chai. Họ không có nhiều sự khác biệt giữa nhau và điều duy nhất phát triển một chút là Heap, đó là rác thải thành công được thu thập sau một thời gian.
Có ai có thể cho tôi một số gợi ý không?
Dưới đây là các bức ảnh chụp (ứng dụng):
[1] http://www.2shared.com/file/W4XJ6HtE/application-1314108550032.html
[2] http://www.2shared.com/fadmin/22521338/f512f97e/application-1314097232727.apps.html
Cảm ơn bạn!
EDIT: Nhìn gần hơn, tôi đã nhận thấy rằng CPU thậm chí không được sử dụng nhiều .. và hệ thống thực sự chậm!
Trong ảnh chụp thứ hai (mà đi hơn một giờ trong khi người đầu tiên đi qua 4 giây chỉ) có một số tải trên CPU và gần không tải tạo bởi GC. Nếu CPU là nút cổ chai, bạn nên cố gắng để cấu hình những phương pháp đang gây ra điều này. Bạn cũng có thể làm điều này trong jvisualvm. – ziggystar
Máy chủ ứng dụng đang chạy ứng dụng nào? Nó đằng sau một máy chủ web front-end? Nếu có, làm thế nào là 2 kết nối (mà mô-đun). – atrain