Ide & Wawasan

Mengeksplorasi pengembangan AI-first, coding guardrail, dan arsitektur untuk dibuang.

Circuit breaker tanpa goroutine, tanpa timer, dan tanpa background overhead

Kebanyakan library circuit breaker memunculkan thread latar belakang untuk memeriksa pemulihan. Anda tidak membutuhkannya. Berikut adalah desain berbasis request yang menghilangkan semua background overhead tanpa mengorbankan correctness.

Setiap circuit breaker produksi yang saya tinjau pada akhirnya memunculkan thread latar belakang. Bisa jadi goroutine Go, Java, atau task tokio Rust. Tugasnya…

Layanan Web Anda Punya Jalur Penutupan yang Anggun. Itulah Bug-nya.

Perangkat lunak crash-only memperlakukan setiap kegagalan sebagai crash dan setiap startup sebagai recovery. Untuk layanan web, ini berarti menghapus logika shutdown Anda dan merancang state yang bertahan meski di-kill -9.

Layanan web Anda punya shutdown handler. Ia melakukan flush buffer, menutup koneksi, menulis checkpoint. Anda mengujinya sekali, mungkin. Di produksi, ia…

Cara Membunuh Mutan yang Bertahan Hidup Ketika Anda Tidak Mengerti Apa yang Diubahnya

Mutation testing menemukan survivor dan Anda sama sekali tidak tahu apa yang dilakukan mutasi tersebut. Berikut adalah metode langkah demi langkah untuk menulis tes yang tepat tanpa harus memahami mutan terlebih dahulu.

Laporan mutation testing Anda penuh dengan survivor, dan setidaknya salah satu dari mereka sama sekali tidak masuk akal bagi Anda. Alat tersebut mengatakan…