Tôi thường gỡ lỗi các ứng dụng của mình bằng cách khởi chạy quy trình WebLogic từ IntelliJ IDEA. Cả hai ứng dụng đều cung cấp cách chỉ định các tham số bộ nhớ tùy chọn (chẳng hạn như -Xms1024m -Xmx2560m -XX:PermSize=1024m, v.v.) cho dòng lệnh Java và có nhiều biến môi trường khác nhau (chẳng hạn như JAVA_OPTIONS) cũng có thể được sử dụng .
Làm cách nào để bạn xác định tùy chọn nào trong số các tùy chọn được chỉ định này "thắng", nghĩa là, từ bên trong quy trình Java, làm cách nào để bạn tìm ra các thông số kỹ thuật bộ nhớ được áp dụng cho quy trình Java? Không có thuộc tính hệ thống nào tôi thấy dường như hiển thị chúng.
Nếu bạn sử dụng jconsole (được cung cấp cùng với java jdk) để kết nối với máy chủ web của bạn:
bảng điều khiển
Bạn có thể chuyển đến tab Tóm tắt VM để xem tất cả các tham số VM được chuyển đến máy chủ web của bạn. Điều này cũng sẽ hiển thị kích thước heap hiện tại và tối đa. Nói chung, nếu bạn có các tham số trùng lặp, tham số bộ nhớ cuối cùng trong danh sách sẽ được sử dụng. Nếu bạn có thêm câu hỏi về điều này, bạn có thể kiểm tra nó ở đây.
Tùy chọn thời gian chạy Java trùng lặp: thứ tự ưu tiên là gì?
Tôi là một lập trình viên xuất sắc, rất giỏi!