State adalah informasi yang disimpan sistem yang memengaruhi fungsionalitasnya dengan cara tertentu. Misalnya, situs web mungkin melacak pengguna yang telah masuk. Editor dokumen mengingat teks saat ini. Pekerja latar belakang mencatat tugas mana yang telah selesai dan mana yang tertunda. Basis data menyimpan catatan yang ditulis ke dalamnya selama diperlukan. Perangkat lunak yang berguna biasanya perlu mengelola state untuk menjalankan fungsionalitas yang dimaksudkan.
Kesulitannya adalah menjaga state tetap benar bahkan ketika permintaan tumpang tindih, server ditambahkan, mesin gagal, dan perubahan perangkat lunak diterapkan. Seringkali, saran umum adalah “membuat aplikasi menjadi stateless”. Namun saran ini perlu penjelasan. Biasanya berarti membuat server aplikasi tertentu mudah diganti sambil menempatkan state penting mereka di tempat lain. Ini tidak berarti tidak adanya state sama sekali.
Memahami pengaturan seperti itu memerlukan melihat mengapa state ada, siapa yang memilikinya, dan apa yang terjadi ketika state menjadi tidak tersedia. Dalam artikel ini, kita akan melihat mengapa state adalah hal tersulit dalam pengembangan perangkat lunak dan berbagai strategi yang dapat digunakan pengembang untuk mengelolanya.
Sumber: ByteByteGo · Diringkas oleh HeadlinesBriefing