Cluster bukan jawaban untuk semua masalah
Ketika sebuah aplikasi terasa lambat, permintaan yang sering muncul adalah membangun cluster. Asumsinya, menambah mesin akan membagi beban dan semuanya menjadi cepat. Pada banyak kasus yang kami tangani, asumsi itu keliru.
Clustering menjawab pertanyaan tentang ketersediaan, yaitu apa yang terjadi bila satu mesin mati. Ia tidak menjawab pertanyaan tentang kecepatan, karena kueri basis data yang tidak efisien akan tetap tidak efisien di sepuluh mesin.
Cari dulu titik lambatnya
Sebelum menambah mesin, kami ukur di mana waktu sebenarnya terpakai. Sangat sering jawabannya ada pada satu kueri tanpa indeks, cache yang tidak aktif, atau berkas gambar yang tidak dioptimalkan. Perbaikan seperti ini bisa memberi peningkatan berkali lipat tanpa biaya perangkat tambahan.
Cluster menambah kerumitan
Beberapa mesin berarti replikasi data, pembagian beban, penemuan layanan, dan pemantauan yang lebih rumit. Setiap komponen tambahan adalah komponen yang bisa gagal. Kerumitan ini layak diambil bila memang dibutuhkan, dan mahal bila tidak.
Kubernetes bukan titik awal
Orkestrasi container bermanfaat pada sistem dengan banyak layanan yang sering dirilis. Untuk satu aplikasi yang dirilis sebulan sekali, ia menambah lapisan yang harus dipelajari dan dirawat tanpa memberi manfaat sebanding.
Kapan cluster memang jawabannya
Cluster tepat ketika layanan Anda tidak boleh berhenti meski satu mesin mati, ketika beban benar-benar melebihi kapasitas satu mesin setelah penyetelan, atau ketika Anda perlu memperbarui sistem tanpa waktu henti. Ketiga alasan itu nyata dan sering kami temui.
Yang kami hindari adalah membangun cluster sebagai jawaban pertama. Urutannya selalu: ukur, sederhanakan, setel, baru tambah mesin bila memang masih perlu.
Ingin dibantu menerapkannya?
Ceritakan kondisi sistem Anda dan kami periksa titik yang paling perlu ditangani lebih dulu. Peninjauan pertama tanpa biaya.
Minta peninjauan