Bloga dön

7 Haziran 2026

Milyonlarca Cihaz, Tek Platform: Telekomda M2M Sistemlerinden Dersler

#m2m#telekom#entegrasyon#backend

Elektrik sayaçları, POS cihazları, araç takip üniteleri, endüstriyel sensörler... M2M (machine-to-machine) dünyasında "kullanıcı", uyumayan ve şikâyet etmeyen ama asla da beklemeyen milyonlarca cihazdır. Ericsson'da Turkcell ve Türk Telekom için M2M platform projelerinde geliştirme, bakım ve destek sorumluluğu üstlendim; ayrıca Ericsson'un Avrupa Birliği projelerinde görev aldım. Bu yazı, o dönemden damıtılmış derslerin özeti.

M2M platformu ne yapar?

Bir M2M platformu, operatör ile cihaz filosu arasındaki yönetim katmanıdır: SIM yaşam döngüsü (aktivasyon, askıya alma, tarife değişimi), bağlantı izleme, kota/faturalama entegrasyonu ve kurumsal müşterilere açılan API'ler. Görünüşte CRUD; pratikte, birbirine güvenmeyen büyük sistemlerin senkron tutulması problemi.

Ders 1: Entegrasyonda 'mutlu yol' istisnadır

Ders kitabındaki akış: istek gelir, işlenir, cevap döner. Gerçekte: istek gelir, alt sistem zaman aşımına uğrar, yeniden deneme aynı isteği iki kez işletir, karşı sistem gece yarısı bakıma girer, mesaj kuyruğu birikir. Sağlam entegrasyon kodu, mutlu yolun değil arıza modlarının etrafına tasarlanır: zaman aşımı, yeniden deneme politikası, idempotent işlem, ölü mesaj kuyruğu.

Ders 2: Durum makineleri hayat kurtarır

Bir SIM'in yaşam döngüsü doğal bir durum makinesidir:

SIM yaşam döngüsü durum makinesi: hazır, aktif, askıda ve kapalı durumları ile aralarındaki geçişler

Bu geçişleri if-else yığınlarıyla yönetmeye çalışan kod, birkaç ay içinde kimsenin dokunamadığı bir mayın tarlasına döner. Geçerli durumları ve izinli geçişleri açıkça modelleyen kod ise üç şey kazandırır: geçersiz geçişler derleme/çalışma zamanında yakalanır, yeni bir durum eklemek yerel bir değişiklik olur ve diyagram ile kod aynı dili konuştuğu için iş birimiyle iletişim kolaylaşır.

Ders 3: Destek, tasarımın aynasıdır

Aynı sistemin hem geliştirmesini hem desteğini yapmak, insana kendi tasarım kararlarını gece 2'de log okurken sorgulatır. Oradan çıkardığım kural: bir akışın loglardan yeniden kurgulanamıyorsa, o akış bitmemiştir. İyi log, ne olduğunu değil, hangi bağlamda olduğunu söyler — hangi müşteri, hangi SIM, hangi işlem, hangi korelasyon ID'si.

Ders 4: Ölçek, niteliksel bir eşiktir

Bin cihazla çalışan toplu işlem, bir milyon cihazda aynı yaklaşımla çalışmaz; gece penceresine sığmaz, tablo kilitlenir, kuyruk taşar. Ölçek büyüdükçe aynı işi daha hızlı yapmak yetmez; işi parçalara bölmek, akışa çevirmek, geri basınç uygulamak gerekir. Bu, mimari bir zihniyet değişimidir ve en iyi telekom ölçeğinde öğrenilir.

Ders 5: Standartlar ve çok paydaşlı çalışma

Telekom, standartların dünyasıdır — ve AB projeleri bunu bir kademe daha yukarı taşır: farklı ülkelerden ortaklar, ortak teslimatlar, birlikte çalışabilirlik gereksinimleri. Orada öğrendiğim şey şu: arayüzü standartlaştırmak, uygulamayı özgürleştirir. Tarafların üzerinde anlaştığı net bir sözleşme varsa, herkes kendi tarafını bağımsız evriltebilir. Bu ilke, mikroservislerden takımlar arası API'lere kadar her yerde aynen geçerli.


Telekom sistemleri gösterişsizdir; kimse sayaç verisinin gece sorunsuz aktığını fark etmez. Ama bu sistemler bana dağıtık sistem sağduyusunu — zaman aşımlarına saygıyı, idempotency refleksini, log disiplinini — herhangi bir kitaptan daha kalıcı öğretti. Bugün bulut veritabanı O&M tarafında da her gün aynı refleksleri kullanıyorum.