MQTT protokolüne genel bakış
- MQTT, küçük cihazların hafif ağlar üzerinde veri alışverişi yapmasını sağlayan bir ağ protokolüdür.
- 1990'ların sonlarında tasarlandı; bu nedenle sınırlı güç ve ağ bant genişliğini verimli kullanmak önemliydi.
- Ağlar geliştikçe edge computing, ev otomasyonu, mobil cihazlar gibi çeşitli alanlarda MQTT'nin değeri hâlâ yüksek.
- MQTT protokolünün sadeliği, son derece güçlü bir özelliğidir.
Andy Piper'ın MQTT ile ilgili faaliyetleri
- 2001'de IBM'e katıldıktan sonra MQTT ile ilk kez tanıştı ve kurum içinde kullanmaya başladı.
- IBM'in Smarter Planet pazarlama faaliyetleriyle bağlantılı olarak MQTT teknolojisini tanıtma görevini üstlendi.
- 2009-2011 arasında blogu aracılığıyla MQTT teknolojisini aktif biçimde tanıttı ve yaygınlaşmasına katkıda bulundu.
- İlk başlarda daha çok IBM içindeki broker'lar kullanılıyordu; ancak Mosquitto gibi açık kaynak broker'ların ortaya çıkmasıyla çok daha yaygın kullanılmaya başlandı.
- 2011'de IBM'in MQTT implementasyonlarını Eclipse Foundation'a bağışlama sürecinde derin biçimde yer aldı.
MQTT'nin başarısı ve büyümesi
- Son 15 yılda MQTT teknolojisini geliştiren ve yaygınlaştıran birçok şirket oldu.
- Bugün MQTT, maker topluluğundan Dyson'ın hava filtrelerine, 3D yazıcı kontrolüne ve imalata kadar çok çeşitli alanlarda kullanılıyor.
- Günlük olarak kullandığımız birçok uygulamanın arka ucunda da muhtemelen MQTT kullanılıyordur.
25. yıl kutlama etkinlikleri
- Resmî MQTT hesabı Twitter'dan Mastodon'a taşındı (@mqtt@fosstodon.org)
- Andy Stanford-Clark, HiveMQ ile bir röportaj yaptı; HiveMQ de bununla ilgili bir podcast yürütüyor.
- MQTT topluluğundaki geliştiricilere, kullanıcılara ve tutkulu destekçilere teşekkür edildi.
MQTT'nin geleceği
- MQTT'nin önümüzdeki 25 yıl ve sonrasında da kullanılmaya ve gelişmeye devam etmesi umuluyor.
Andy Piper'ın kişisel hikâyesi
- IBM'de çalışırken MQTT topluluğu faaliyetlerine odaklandığı için bir dönem düşük performans değerlendirmesi aldı.
- Mosquitto'nun geliştiricisi Roger Light, 2009'da Andy Stanford-Clark'ın sunumunu dinledikten sonra ilham alarak Mosquitto'yu geliştirmeye başladı.
- Andy Piper'ın MQTT ile ilgili YouTube videoları arasında, PHP ile entegrasyonu anlatan 15 yıllık bir video hâlâ yüksek izlenme sayısına sahip.
GN⁺ görüşü
- MQTT, IoT çağında çok önemli bir rol oynuyor ve hafifletilmiş protokol tasarımı sayesinde sınırlı kaynaklı ortamlarda da iyi çalışıyor.
- Mevcut karmaşık protokollerin aksine basit ve kullanımı kolay olması avantaj; ancak güvenlik tarafında dikkat gerekiyor.
- MQTT'ye benzer protokoller arasında AMQP ve CoAP bulunuyor; ancak kullanılabilirlik açısından MQTT daha avantajlı.
- İleride MQTT'nin güvenliğini ve ölçeklenebilirliğini geliştirmeye yönelik çabaların süreceği, ayrıca WebSocket gibi modern ağ teknolojileriyle entegrasyonun da beklendiği belirtiliyor.
- IoT hizmeti geliştirirken MQTT protokolünün benimsenmesi ciddi biçimde değerlendirilebilir; çeşitli açık kaynak broker'lar ve istemci kütüphanelerinden yararlanılabilir.
1 yorum
Hacker News görüşleri
İlk projesi olarak, büyük bir kayak merkezinin su kanalı sistemini SVG haritası ve MQTT kullanarak görselleştirdiği deneyimini paylaşıyor. Bu proje 10 yıldan uzun süredir ayakta ve durum güncellemeleri WebSocket üzerinden otomatik olarak yansıtılıyor.
MQTT'yi yakın tarihli bir projede kullandığını, ancak protokolün çok sayıda seçeneği nedeniyle anlamasının zor olduğunu ve dokümantasyonunun da yetersiz geldiğini söylüyor. Özellikle Eclipse Mosquitto Python istemcisinde race condition sorunları yaşamış.
Andy Stanford Clark'ın evinin, IoT cihazları tweet atmadan önceki dönemde haber olduğunu anımsatarak, MQTT protokolünün uydu bağlantısında 1 bayt göndermenin 1 dolara mal olduğu zamanlarda son derece verimli ve uygulamasının basit olduğunu açıklıyor.
İlginç bir not olarak, Boost C++ kütüphanesinin
async-mqtt5implementasyonunu Boost.MQTT olarak dahil etmek üzere değerlendirdiğini paylaşıyor.Son yıllarda MQTT'nin fabrikalarda makineler arası veri paylaşımında yaygın biçimde kullanıldığını, geçmişte ise petrol ve gaz sektöründe SCADA sistemlerinde kullanıldığını açıklıyor. MQTT'nin Industry 4.0'ın başlıca itici güçlerinden biri olduğunu vurguluyor.
MQTT'nin hafif ve verimli olduğu iddiasına şüpheyle yaklaşıyor ve bunun yalnızca TCP/IP kullandığını savunuyor. Standart olduğu için ticari cihazlarla bağlantı kurulabilmesi iyi, ancak daha iyi pub/sub ve message queue seçenekleri olduğunu düşünüyor.
IoT derslerinde MQTT kullandığını ve WebSocket üzerinden desteklenmesinin kullanışlı olduğunu anlatıyor.
MQTT'nin yalnızca küçük hobi projelerine uygun olmadığını, Facebook Messenger gibi büyük ölçekli projelere de ölçeklenebildiğini açıklıyor.
Yakın tarihli bir embedded systems projesinde MQTT kullanarak süreçler arası bir mesajlaşma sistemi kurduğu deneyimini paylaşıyor. Cihazları ağa bağlayıp MQTT Explorer ile mesajları kaydedebildiğini veya enjekte edebildiğini belirtiyor.
Yakın zamanda NATS'te MQTT 3.1.1 uyumluluk modunu kullandığı deneyimini paylaşıyor; kurulumun nispeten kolay olduğunu ve akıllı ev ihtiyaçlarına iyi uyduğunu söylüyor. Gecikme ve throughput yük testlerini inceleyebilmenin de eğlenceli bir deneyim olduğunu ekliyor.