Các bạn có thể khuyên dùng gì với Java?
Yêu cầu duy nhất là nó phải là mã nguồn mở, hoặc có giấy phép học thuật không quá đắt.
Các bạn có thể khuyên dùng gì với Java?
Yêu cầu duy nhất là nó phải là mã nguồn mở, hoặc có giấy phép học thuật không quá đắt.
Câu trả lời:
VisualVM đi kèm với jdk6 có một hồ sơ cơ bản bên trong nó. VisualVM được cung cấp cùng với jdk, vì vậy nếu bạn đã cài đặt jdk6, bạn cũng có thể cài đặt nó.
VisualVM
thành công trước đây, nhưng nó đã gặp sự cố đối với tôi khi cố gắng cấu hình ứng dụng Tomcat. Điều này làm việc cho tôi: github.com/jvm-profiling-tools/honest-profiler
bạn đã có một danh sách ở đây (liệt kê chúng bên dưới, phòng trường hợp liên kết bị hỏng)
- JMemProf
- JMP
- DrMem
- JTreeProfiler
- NetBeans Profiler
- API JAMon
- JBoss Profiler
- MessAdmin
- Hồng ngoại
- TomcatProbe
- Java Interactive Profiler (JIP)
- Profiler4j
- Đồng hồ bấm giờ
- JMeasurement
- DJProf
- TIJmp
- Allmon
- Appspy
- EurekaJ
- japex
- Hồ sơ OKTECH
- Perf4j
Ah. Netbeans Profiler , người chiến thắng "Sản phẩm của năm" của developer.com, vào năm 2009.
Java có một trình biên dịch cơ bản được tích hợp sẵn gọi là HProf . Tôi thấy hữu ích khi so sánh kết quả mà nó cung cấp với kết quả từ các trình cấu hình đầy đủ tính năng hơn.
Công cụ mã nguồn mở jvmtop bao gồm một trình biên dịch bảng điều khiển cơ bản. Ví dụ đầu ra:
JvmTop 0.7.0 alpha - 15:16:34, amd64, 8 cpus, Linux 2.6.32-27, load avg 0.41
http://code.google.com/p/jvmtop
Profiling PID 24015: org.apache.catalina.startup.Bootstrap
36.16% ( 57.57s) hudson.model.AbstractBuild.calcChangeSet()
30.36% ( 48.33s) hudson.scm.SubversionChangeLogParser.parse()
7.14% ( 11.37s) org.kohsuke.stapler.jelly.JellyClassTearOff.parseScript()
6.25% ( 9.95s) net.sf.json.JSONObject.write()
3.13% ( 4.98s) ....kohsuke.stapler.jelly.CustomTagLibrary.loadJellyScri()
Đây là bài viết về Lập hồ sơ ứng dụng Java bằng TPTP và đây là hướng dẫn Lập hồ sơ ứng dụng dựa trên J2SE 5.0 bằng Eclipse TPTP .
Nếu bạn đang tìm kiếm một trình biên dịch mã nguồn mở không rườm rà, dễ sử dụng, bạn có thể muốn xem qua Jip ( Java Interactive Profiler ). Nó được xuất bản theo giấy phép BSD. Tôi thấy nó khá hữu ích cho các chương trình nhỏ. Ít nhất, kết quả mà nó cung cấp dễ hiểu hơn so với kết quả đầu ra của hprofs.
Java Mission Control , nó được sử dụng miễn phí để phát triển và nó tích hợp với Eclipse. Nó có chi phí rất thấp (<1%) vì nó vẫn dựa trên dữ liệu mà JVM đang thu thập.
Nó rất dễ sử dụng và nó cũng có thể cung cấp nhiều thông tin mà bạn thường không tìm thấy trong các công cụ lập hồ sơ khác, ví dụ như lập hồ sơ độ trễ, kiểm tra bộ nhớ trực tuyến, thống kê gc chi tiết
Điều này nhanh chóng, ít tốn kém và rất hiệu quả: chỉ cần thực hiện một vài lần kết xuất luồng, hoặc tạm dừng chương trình vài lần và xem các dấu vết ngăn xếp.
Cân nhắc https://github.com/jvm-profiling-tools/async-profiler tiên tiến
Dự án này là một hồ sơ lấy mẫu chi phí thấp cho Java không bị vấn đề thiên vị Safepoint . Nó có các API dành riêng cho HotSpot để thu thập dấu vết ngăn xếp và theo dõi phân bổ bộ nhớ. Hồ sơ hoạt động với OpenJDK, Oracle JDK và các thời gian chạy Java khác dựa trên HotSpot JVM.
Nó cũng được tích hợp sẵn trong IntelliJ IDEA Ultimate: https://www.jetbrains.com/help/idea/cpu-profiler.html .
Ngoài ra còn có https://github.com/jvm-profiling-tools/honest-profiler tương tự .
So sánh giữa async-profiler
và honest-profiler
: https://github.com/jvm-profiling-tools/async-profiler/issues/77
Netbeans IDE bao gồm một hồ sơ miễn phí.
Ngoài ra, nếu tôi nhớ không nhầm, giấy phép học thuật cho JProfiler (tương đối) rẻ.
Màn hình JVM là một trình biên dịch Java được tích hợp với Eclipse để theo dõi việc sử dụng CPU, luồng và bộ nhớ của các ứng dụng Java.
Nếu cần phân tích sâu hơn, bạn có thể sử dụng các công cụ khác (ví dụ: TPTP , Bộ phân tích bộ nhớ ) như một bước tiếp theo.