Ada perbedaan antara "Praktik Terbaik", hal-hal yang dilakukan banyak orang dengan alasan yang baik, dan "Praktik Biasa", hal-hal yang dilakukan banyak orang karena mereka malas dan / atau bodoh.
Aplikasi dan server (yang lebih buruk) yang perlu dinyalakan ulang atau di-boot ulang secara rutin agar tetap berjalan dengan baik adalah hal biasa. Tapi itu juga indikasi yang jelas bahwa Anda memiliki bug kritis.
Dengan membuatnya SOP untuk memulai kembali aplikasi secara teratur, perusahaan Anda menyembunyikan bug serius di bawah karpet. Ini tidak bisa dimaafkan, bug harus dihadap ke bawah dan tergencet, atau akan kembali menggigit Anda nanti.
Idealnya, perusahaan Anda harus menemukan pengembang yang lebih baik. Sayangnya, ini mungkin menyebabkan banyak pekerjaan untuk menulis ulang traktat besar kode Anda. Fakta bahwa pengembang berpikir bahwa kode yang ditulis dengan buruk dapat diterima, atau tidak cukup tahu untuk mengenali gejala kode kereta, menunjukkan kualitas kode tersebut rendah. Pengembang yang baik secara konstitusional tidak mampu meninggalkannya di negara itu.
Karena Anda mungkin tidak berada dalam posisi untuk menggantikan pengembang, beberapa saran:
- Lihat apakah Anda dapat meminta pengembang yang lebih baik meninjau kode dan melaporkan penilaian mereka kepada seseorang yang dapat melakukan sesuatu tentang hal itu,
- Lihat alat profiling. Jika Anda memiliki keterampilan dan / atau kecenderungan, cobalah membuat profil kode sendiri untuk menemukan kebocoran dan melaporkannya.
Bahkan tanpa masuk ke alat profiling berorientasi pengembang, ada banyak alat berorientasi sysadmin untuk profil dan memantau penggunaan memori pada aplikasi Java. Anda harus benar-benar mengatur pemantauan memori (terutama tumpukan) pada server produksi Anda dalam hal apa pun. Saya akan merekomendasikan ini bahkan jika Anda menjalankan kode kualitas. Ini mungkin memberi Anda peringatan terlebih dahulu saat aplikasi kereta Anda akan tumbang.
Tetapi lebih baik lagi, ini akan membantu Anda untuk mengumpulkan bukti bahwa ada kebocoran, dan bahkan dapat menunjukkan di mana masalah tersebut ada dalam aplikasi. Ini akan memberi Anda amunisi yang lebih baik untuk melobi agar diperbaiki.