Có một sự khác biệt giữa "Thực hành tốt nhất", những điều mà nhiều người làm vì lý do chính đáng và "Thực tiễn chung", những điều mà nhiều người làm vì họ lười biếng và / hoặc không biết gì.
Các ứng dụng và máy chủ (tệ hơn) cần được khởi động lại hoặc khởi động lại thường xuyên để tiếp tục chạy tốt là khá phổ biến. Nhưng đó cũng là một dấu hiệu rõ ràng rằng bạn có một lỗi nghiêm trọng.
Bằng cách làm cho nó khởi động lại một ứng dụng thường xuyên, công ty của bạn đang che giấu một lỗi nghiêm trọng dưới thảm. Điều này là không thể tha thứ được, con bọ cần phải úp xuống và đè bẹp, hoặc nó sẽ quay lại cắn bạn sau đó.
Tốt nhất, công ty của bạn nên tìm một nhà phát triển tốt hơn. Thật không may, điều này có thể dẫn đến khá nhiều công việc để viết lại các vùng lớn của mã của bạn. Việc nhà phát triển nghĩ rằng mã viết kém có thể chấp nhận được hoặc không biết đủ để nhận ra các triệu chứng của mã lỗi, cho thấy chất lượng của mã thấp. Một nhà phát triển giỏi sẽ không có khả năng hiến pháp để lại nó trong trạng thái đó.
Cho rằng bạn có thể không ở vị trí để thay thế nhà phát triển, một vài gợi ý:
- Xem nếu bạn có thể có một nhà phát triển tốt hơn xem xét mã và báo cáo đánh giá của họ cho ai đó có thể làm gì đó về nó,
- Có một cái nhìn vào các công cụ định hình. Nếu bạn đã có các kỹ năng và / hoặc thiên hướng, hãy thử tự cấu hình mã để tìm rò rỉ và báo cáo nó.
Ngay cả khi không truy cập vào các công cụ định hình theo định hướng của nhà phát triển, vẫn có rất nhiều công cụ hướng sysadmin để định hình và giám sát việc sử dụng bộ nhớ trên các ứng dụng Java. Bạn thực sự nên thiết lập giám sát bộ nhớ (đặc biệt là heap) trên các máy chủ sản xuất của bạn trong mọi trường hợp. Tôi khuyên bạn nên điều này ngay cả khi bạn đang chạy mã chất lượng. Nó có thể đưa ra cảnh báo trước khi các ứng dụng lỗi của bạn sắp sửa lật đổ.
Nhưng tốt hơn hết, những điều này sẽ giúp bạn thu thập bằng chứng rằng có rò rỉ, và thậm chí có thể chỉ ra vấn đề nằm ở đâu trong ứng dụng. Điều này sẽ cung cấp cho bạn đạn tốt hơn để vận động hành lang cho nó được cố định.