Chúng tôi đang chạy một cổng thông tin liferay trên tomcat 6. Mỗi portlet là một ứng dụng web chứa để nó bao gồm tất cả các thư viện mà chính portlet yêu cầu. Chúng tôi hiện có 30 + portlet. Kết quả của điều này là permgen của tomcat của chúng tôi tăng lên với mỗi portlet mà chúng tôi triển khai.Kích thước lớn Permgen + hiệu suất tác động
Hiện tại, chúng tôi có hai đường dẫn mà chúng tôi có thể theo dõi. Hoặc di chuyển một số thư viện được commenly được sử dụng bởi mỗi portlet của chúng tôi vào thư viện chia sẻ tomcat. Điều này sẽ bao gồm các công cụ như spring/hibernate/cxf/.... để giảm kích thước permgen của chúng tôi Hoặc dễ dàng hơn là tăng kích thước permgen.
Tùy chọn thứ hai này sẽ cho phép chúng tôi giữ mọi portlet như một thực thể tự liên kết.
Câu hỏi đặt ra là, có bất kỳ tác động tiêu cực nào về hiệu suất từ việc tăng kích thước permgen không? Chúng tôi hiện đang chạy ở 512MB. Tôi đã tìm thấy rất ít hoặc không có thông tin về điều này. Nhưng tìm thấy một số bài đã được mọi người đang nói về chạy trên kích thước 1024MB permgen mà không có vấn đề.
Tôi không mong đợi một giấy phép 1 GB gây ra sự cố. –
Câu hỏi liên quan: http://stackoverflow.com/q/9636328/1140748 –
Điều này không trả lời câu hỏi của bạn, nhưng thêm một khía cạnh khác: Tôi xem xét quyết định có 1 portlet cho mỗi plugin một giới hạn nhân tạo. Với số lượng portlet bạn cung cấp, tôi đặt cược có một số liên quan nơi tôi muốn khuyên bạn nên xem xét việc đóng gói những cái liên quan với nhau. Điều này sẽ chăm sóc nỗi đau của bạn và IMHO tăng tổng quan về các plugin của bạn. –