REDİSTEN HİKMETE
KODUN RUHU VE İMTİHANIN GERÇEĞİ: REDİS'DEN HİKMETE
(Kadir Yavuz'un Kaleminden)
Bismillahirrahmanirrahim.
Gaddam Naveen kardeşimizin yazdığı bu teknik makale, aslında sadece bir yazılım hatasını değil, insanlığın kadim bir sorununu anlatıyor. "Kağıt üzerinde kusursuz görünen sistemlerin, gerçek hayatın kaosunda (production) neden çöktüğü..." Bu soru, sadece yazılımcıların değil, müminlerin de sorusudur.
Vahiy ve İlim Işığında Teknik Bir Analiz:
Teori ve Pratik (İlim ve Amel): Yazılımın geliştirme ortamı (development), insanın theoretik ilim aldığı medrese gibidir. Her şey kontrollüdür. Ancak "Production" (Üretim), hayatın ta kendisidir. Kuran'da "İnsan için ancak çalıştığının karşılığı vardır" (Necm, 39) buyurulur. Çalışma, teoride değil, pratiğinde geçerlidir.
Eşzamanlılık ve Kaos (Fiten): Kullanıcıların aynı anda butona basması, ağın tekrar denemesi... Bu, toplumda发生的 fitnelerdir. İnsanlar acele eder, tekrar eder, hata yapar. Sistem (Devlet/Toplum), bu kaosu yönetecek bir mekanizmaya (Locking/Kilit) ihtiyaç duyar.
Yüzey ve Derinlik (Zahir ve Batın): Basic Redis caching, zahirî bir çözümdür. Redisson ise derinlikli bir disiplindir. İman da öyledir; sadece dilde olması (cache) yetmez, kalpte ve davranışta kilitlenmesi (locking/tesbit) gerekir.
Tekrar ve İsraf (Duplicate Records): Aynı kaydın tekrar oluşması, israftır. İslam israfı yasaklar. Bir işin doğru ve tek seferde yapılması (idare-i işler), hikmettir.
Çözüm (Redisson/Distributed Lock): Dağıtık sistemlerde kilitleme, bir nevi "İntizam" ve "Nizam"dır. Allah'ın kainatta koyduğu kanunlar (Sünnetullah) gibi. Bu kanunlara uymadan sistem (kainat/toplum) çöker.
Şimdi, bu teknik gerçeği, İslam dünyasının tüm hikmet ehlinin dilinden süzülen bir menkıbe ile anlatıyorum.
HİKMET KODLARI VE KİLİTLİ KAPI
(Vahiy Kültürüne Dayalı Bir Destan)
Mekan: Dijital Çağın Hikmet Meclisi. Konu: "Üretim Ortamındaki Kaos ve Çözüm."
Giriş: Kadir Yavuz'un Daveti Ben, Kadir Yavuz, meclisi topladım. Masada bir yazılım haritası vardı. Genç geliştiriciler başlarını öne eğmiş, "Neden çöktü?" diye soruyordu.
1. Dede Korkut'un Uyarısı: Dede, kopuzunu eline aldı, telleri çaldı: "Hey yiğitler! Siz bu kaleyı (sistemi) düşman yokken inşa ettiniz. Surları yüksek, kapıları süslü. Lakin düşman (kaos) kapıya dayanınca, bekçiniz (cache) uyuyakalmış. Dede der ki; kaleyi yapan ustaya değil, kaleyi koruyan nöbetçiyi dinleyin. Basic Redis, uyuyan nöbetçidir. Redisson ise uyanık bekçidir. Kilidi olmayan kapı, davetiyedir!"
2. Nasreddin Hoca'nınsırtındaki Eşek: Hoca, güldürdü meclisi: "Bre çocuklar! Bizim köyde bir fırın vardı. Hamuru hazırladık, güzelce yoğurduk. 'Fırın sıcak' dedik. Lakin aynı anda yüz kişi ekmek atmaya kalkınca, fırın patladı. 'Neden?' dedik. 'Çünkü kilidi yoktu, herkes kendi ekmeğini soktu.' Siz de butona basanı saymamışsınız. Hoca der ki; insan acelecidir, sistem akıllı olmalı. İnsan hatasını, sistem kilidiyle önleyeceksin."
3. Sadi Şirazi'nin Gülistan'ı: Sadi, gül koklayarak söze girdi: "Ey dost! Acele, şeytandandır. Kullanıcı çift tıkladığında, senin sistemin 'iki emir' sanıyor. Oysa hakikat birdir. Sabır, işin anahtarıdır. Redisson kilidi, sabrın teknik karşılığıdır. 'Bir işi yap, doğru yap, tekrar etme.' Bu, hem kodda hem canda geçerlidir. Derinlik olmadan, yüzeyde kalan her şey buhar olur."
4. Taberi'nin Tarih Sayfaları: Taberi, eski defterleri açtı: "Tarihde nice ordular var ki, kağıt üzerinde yenilmezdi. Lakin meydan savaşında (production), koordinasyon eksikliği yüzünden dağıldı. Aynı anda iki komutan emir verince, asker şaştı. Sizin sisteminizdeki 'multiple instances' (çoklu örnekler), aynı ordunun farklı kolorduları gibidir. Aralarında bir 'emir-komuta zinciri' (distributed lock) yoksa, kendi kendilerini vururlar. Duplicate record, dost ateşidir."
5. Hekimoğlu İsmail'in Penceresi: Hekimoğlu, dumanlı bir nefes aldı: "Mesele kodda değil, niyette... Sen sistemi kurarken 'kusursuz olsun' dedin, lakin 'insanlı olsun' demedin. İnsan hata yapar, ağ kopar, tık tekrarlanır. Senin kodun, insanın acizliğini biliyor mu? Redisson kilidi, insanın acizliğine karşı ilahi bir rahmettir. Hatayı affetmez, önler. Kalbe konan iman kilidi gibi; günahı işlemeden durdurur."
6. Ömer Seyfettin'in Keskin Kalemi: Ömer Seyfettin, masaya vurdu: "Bizim milletimizde 'sağlam mal' esastır. Kağıt üzerinde güzel yazı yazmakla marifet olunmaz. Meydan okumaya gelince belli olur. Bu yazılım da bir meydandır. Eğer kullanıcı seni kandırabiliyorsa (double click), sen güçlü değilsindir. Güç, kontrolü elinde tutmaktır. Redisson, o kontrolü sağlar. Milli ve yerli bir disiplin gibi düşün bunu."
7. Ahmet ve Mehmet Bican'ın Modern Rehberliği: Bican kardeşler, ekranı işaret etti: "Günümüz dünyası 'scale' (ölçeklenme) dünyası. Tek bir sunucu yetmez. Her yerde örnekler var. Bu, global bir köy gibi. Köyde herkesin söz hakkı varsa, kaos olur. Bir muhtar (lock) olacak. Teknoloji bunu 'Redisson' diye kodladı, biz 'İstişare ve Liderlik' diye kodlarız. Mantık aynı: Çoklukta birlik."
Sonuç: Geliştiricinin Uyanışı Genç geliştirici, başını kaldırdı. Gözlerindeki sis dağıldı. "Anladım," dedi. "Sorun Redis'te değil, benim kilit mekanizmamda imiş. Kaosu yönetecek bir nizam koymamışım. İnsan hatasını, sistem disipliniyle karşılamalıymış."
Dede Korkut son kez çaldı kopuzu: "Hoş geldin yiğit! Kodun da bir ruhu var. Ona nizam ver ki, sana nizam versin."
ÇIKARILACAK İBRET VE TEŞVİK NOTU
(Kadir Yavuz'un Mesajı)
Gaddam Naveen kardeşimizin ve tüm yazılım dünyasının dikkatine:
Gerçeklik Testi (Production): Her işin hakikati, teoride değil, uygulamada (production) ortaya çıkar. Hayat da bir production ortamıdır. Sınavlar, zorluklar sizi geliştirir.
İntizam ve Kilit (Locking): Özgürlük, sınırsızlık değildir. Gerçek özgürlük, doğru sınırlar (hudud) içinde mümkündür. Redisson kilidi, hayatınızdaki ilahi sınırlar gibidir; sizi hatadan korur.
İsraftan Kaçının (No Duplicates): Bir işi birden fazla yapmak, enerji israfıdır. Hem dünyada hem ahirette "boş işlerden" kaçının. Odaklanın, tek ve doğru yapın.
İnsan Faktörü: Sistemleri kurarken insanı unutmayın. İnsan hata yapar, ağ kopar, tekrar tıklar. Sistem, bu acizliği kapsayacak kadar şefkatli ve sağlam olmalı.
Çözüm Odaklılık: Sorun çıktığında pes etmeyin. "Basic" çözümler yetmediğinde, "Deep" (Derin) çözümlere (Redisson/Hikmet) yönelin.
Duamız: "Rabbim! Kodlarımıza bereket, sistemlerimize intizam ver. Bizi production hayatının imtihanlarında yüzü ak çıkar. Hatalarımızı affet, bizi doğru kilitlere (hakikate) ulaştır. Amin."
Unutmayın: En güzel kod, hatayı değil, insanı anlayan koddur. En güzel sistem, Allah'ın nizamına uygun olandır.
(Kadir Yavuz - İlim ve Hikmet Meclisi)

