Yükleniyor...
Çoğu API Gateway migrasyonu teknoloji yüzünden değil, davranış farklarının hafife alınması nedeniyle başarısız olur. Bu yazı, üretimde gerçekten fark yaratan kararları ve sahadan çıkarılan dersleri paylaşıyor.
API Gateway migrasyonları çoğu kurumda yanlış bir noktadan ele alınır. Proje kickoff’unda genellikle tablo nettir: mevcut ürün “eskidi”, yeni platform “daha modern”, roadmap “kaçınılmaz”. Bu noktadan sonra konu, servis sayıları, policy’ler ve cutover tarihleri etrafında döner.
Ancak üretimde yaşanan problemler, neredeyse hiçbir zaman bu başlıklardan kaynaklanmaz.
Sorun, gateway’in ne olduğunun yanlış anlaşılmasıdır.
Gateway, bir entegrasyon ürünü değildir. Gateway, sistemin dış dünya ile kurduğu davranışsal sözleşmedir. Bu sözleşmeyi farkında olmadan değiştirdiğiniz anda, migrasyon teknik olarak başarılı olsa bile operasyonel olarak kırılmaya başlar.
Bir API Gateway, yalnızca request’i alıp backend’e iletmez. Üretimde çalışan bir gateway zamanla şu rolleri üstlenir:
Bu yan etkiler genellikle dokümante edilmez. Ama client’lar onlara bağımlıdır.
Bu yüzden “aynı endpoint’ler ayağa kalktı” cümlesi, migrasyonun başarı kriteri değildir.
Gerçek hayatta client’lar nadiren değişir. Daha doğrusu, değişmeleri beklenmemelidir.
Bir gateway migrasyonu client değişikliği gerektiriyorsa, o proje teknik olarak değil; operasyonel olarak hatalıdır.
Başarılı projelerde ortak nokta şudur: Client’lar migrasyonu fark etmez.
Üretimde sorun çıkaran migrasyonların neredeyse tamamında aynı problem vardır: Yeni gateway, eskisiyle davranışsal olarak birebir değildir.
Bu farklar çoğu zaman küçük görünür:
Ama bu küçük farklar, haftalar sonra beklenmedik yerlerde patlar.
Çünkü client’lar yalnızca API sözleşmesine değil, gateway davranışına da entegredir.
Migrasyon sırasında masaya gelen öneriler tanıdıktır:
Bunların hiçbiri yanlış değildir. Ama migrasyon anı, bu kararlar için en riskli zamandır.
Üretimde çalışan bir sistemde, mimari doğruluk değil; öngörülebilirlik kazanır.
Bu yüzden olgun ekipler şunu yapar:
Önce birebir eşleşme, sonra iyileştirme.
Sahada başarıyla tamamlanan projelerde tekrar eden bir desen var:
Bu yaklaşım projeyi yavaşlatmaz; geri dönüşü olmayan hataları engeller.
Bu tür projelerde sorulması gereken sorular teknik değil, yapısaldır:
Bu sorular net değilse, migrasyon yalnızca ertelenmiş bir krizdir.
API Gateway migrasyonları teknoloji projeleri değildir. Bunlar davranış koruma projeleridir.
En başarılı olanlar:
Ve çoğu zaman “fazla muhafazakâr” görünen kararlar sayesinde başarılı olur.