Menu
Apexsoft Digital Agency

Arti sebenarnya dari "di staging jalan kok"

Staging bukan produksi versi kecil. Setiap perbedaan di antara keduanya adalah bug yang menunggu momen paling buruk untuk muncul.

2 menit baca Rekayasa Apexsoft

Sebuah fitur disetujui di staging, dirilis, lalu gagal dalam satu jam. Tidak ada yang salah melakukan sesuatu. Kedua lingkungannya memang tidak sama, dan perbedaannya tidak terlihat sampai akhirnya terlihat.

Perbedaan yang benar-benar menggigit

Data yang pertama. Staging biasanya berisi contoh yang rapi: empat puluh produk, enam pesanan, tidak ada pelanggan dengan tanda kutip di namanya dan tidak ada pesanan dengan lima puluh baris barang. Produksi menyimpan kekacauan bertahun-tahun, termasuk catatan yang diimpor sebelum aturan yang sekarang ada.

Yang kedua waktu. Staging dipakai pada jam kantor oleh dua orang. Tidak ada yang berjalan jam tiga pagi, tidak ada yang bertumpuk, tidak ada yang menunggu di belakang yang lain. Apa pun yang bergantung pada urutan — pekerjaan terjadwal, antrean, kunci — secara definisi belum teruji.

Yang ketiga skala, dan jarang soal server. Ia biasanya sebuah kueri yang mengembalikan seluruh isi tabel: seketika untuk enam pesanan, lambat untuk enam puluh ribu.

Buat berbedanya disengaja, bukan kebetulan

Tujuannya bukan dua lingkungan yang identik; itu mahal dan, dengan data pelanggan sungguhan, sering tidak bijak. Tujuannya adalah setiap perbedaan merupakan keputusan yang dibuat seseorang dan bisa disebutkan namanya.

Versi yang sama untuk semua yang berjalan. Konfigurasi yang sama, hanya nilainya yang berbeda. Pekerjaan terjadwal yang sama, pada jam yang sama. Salinan data produksi dengan bagian pribadinya diacak — bukan data karangan, karena data karangan tidak pernah memuat bentuk-bentuk yang menyebabkan kegagalan.

Kalau sebuah perbedaan memang harus ada, ia harus berisik. Spanduk lingkungan di bagian atas staging bukan hiasan; itulah yang mencegah seseorang mengirim email ke pelanggan sungguhan dari basis data yang salah.

Kilometer terakhir adalah rilisnya sendiri

Sebagian besar kegagalan “di staging jalan” bukan soal fiturnya sama sekali. Ia adalah migrasi yang berjalan di tabel dengan volume nyata, cache yang tidak dibersihkan, worker antrean yang masih menjalankan kode minggu lalu, aset yang dibangun di tempat lain.

Karena itu rilis harus berupa skrip, dijalankan identik setiap kali, dan karena itu staging harus dirilis dengan cara yang sama seperti produksi. Kalau staging diperbarui manual dan produksi lewat skrip, dua hal terpenting dalam sistem itu belum pernah diuji bersama.

Ceritakan apa yang tidak berjalan.

Mengisi permintaan penawaran memakan sekitar lima menit dan kami membalas dalam dua hari kerja — dengan penilaian sungguhan, bukan brosur.

WhatsApp: +62 851-6897-6447