2012-02-13 23 views

Trả lời

5

Bạn có thể dễ dàng kiểm tra phân bổ bộ nhớ kích thước heap bằng JConsole, nếu bạn có đường dẫn đến jre/jdk được thiết lập chính xác trên hệ thống, bạn có thể khởi động nó bằng lệnh jconsole từ bất kỳ đâu.

Đối với việc quản lý phân bổ bộ nhớ heap của bạn, bạn có thể có một cái nhìn ở đây: http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html

+1

bạn có thể cho tôi lệnh từ trình bao linux tôi có thể kiểm tra nó – Amit

+0

nó phụ thuộc vào nơi bạn đã cài đặt java, trên Fedora của nó '/ usr/java/latest/bin', chương trình gọi là 'jconsole', như tôi đã nói nếu bạn có đường dẫn đến thư mục bin của bạn thiết lập một cách chính xác bạn chỉ có thể thực hiện 'jconsole' từ bất cứ nơi nào. – Kris

+0

Tôi đã hỏi nó bởi vì, tôi đã sử dụng máy chủ từ xa, tôi không thể chạy jconsole có – Amit

0

Kích thước đống sử dụng bởi Tomcat được định nghĩa trong cấu hình của nó.

Đây là nơi bạn có thể kiểm tra và thay đổi nó.

Nếu bạn không chắc chắn về nơi lưu cấu hình này, tôi khuyên bạn nên xem tài liệu Tomcat, nơi điều này được giải thích cùng với tất cả các giá trị cấu hình.

16

Một cách đơn giản trên Linux là chạy như sau:

ps-ef | grep tomcat

Hãy tìm điểm bắt đầu và JVM tối đa bộ nhớ:

-Xms1024m -Xmx4096m

Trong trường hợp này, nó phân bổ 1G khi khởi động và Tối đa là 4G.

0

Nếu bạn cần thêm thông tin từ máy chủ nhưng không thể đăng nhập tương tác (hoặc không có GUI hoặc JMX được thiết lập, v.v.), bạn có thể bao gồm javamelody trong tệp/lib của bạn và nó sẽ tạo trang tại máy chủ : 8080 // giám sát với tất cả các loại thông tin tốt, bao gồm kích thước heap, số liệu thống kê GC và kích thước permgen.

Đây KHÔNG phải là một điều an toàn để chạy trong môi trường sản xuất - nếu bạn cần tất cả thời gian ít nhất hãy khóa nó xuống!