Bu yıl yeni bir terim öğrendim. Websocket. Araştırmalarım kadarıyla sistemi yormuyor. Oluşan sonucu anlık gönderiyor. Interval ile yapılan sürekli yoklama işlemlerinden kurtarıyor ama sürecin nasıl işlediği, nasıl yazıldığı konusuna kimse değinmemiş. Biraz bilgi verirmisiniz?
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
Unix Socket'i biliyor olsaydın, Websocket yabancı gelmezdi cunku Unix Socket'le temel olarak aynı tasarımda; sadece tüm veri iletimi 80 ve 443 nolu portlardan sağlanıyor o yüzden WebSocket.
Aslında olay çok basit. Önceden sunucudan bir cevap(response) gelmesi için istemci bir istek(request) göndermek zorundaydı. Facebook bildirim tarzı bir uygulama düşünelim, sürekli sunucuya yeni bilgi var mı diye istek göndermek zorundayız, çünkü sunucu sadece istek gönderildiğinde cevap veriyor. Websocket mantığı diyor ki, sunucu ve istemci arasında bir kanal oluşturalım, her ikisi de birbiriyle haberleşsin, böylece istemci istek göndermese bile sunucu bak bildirim geldi şu bilgiyi güncelle diyebiliyor. İşin programlama kısmı da tamamen bu mantığın uygulanmasından ibaret. Herhangi bir olay(event) gerçekleştiğinde gerekli mesaj ve bilgi gönderiliyor, böylece sürekli değişiklik var mı diye kontrol etmemize gerek kalmıyor çünkü değişiklikler sürekli taraflarca birbirine bildiriliyor. Ama ben daha önce websocket uygulaması yazmadım, teknik kısımda farklı şeyler olabilir bilgim yok.
benim anladığım şu: websocket ile app layer'da connection oriented full-duplex iletişim yapabiliyorsun, tcp socket gibi transport layer'da değil. ki bence iyi bir imkan, yani application yazan adamın transport layer'da işi ne? tcp socket actığında tls/ssl de kullanamıyorsun çünkü onlar app layer, ama websocket ile tls/ssl kullanmak mümkün.
özellikle browser-web server iletişiminde kullanılmak üzere tasarlandığı söyleniyor, genel olarak kullanımın karmaşık olduğu belirtilmiş. Java, C++ ile kullanımı herhalde çok zor olur.
şu devirde HTTP kullanmayıp connection oriented bağlantı kurmak isteyenin ne yaptığını çok iyi bilmesi lazım, yoksa aklına şaşarım.
DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.
Üye Ol Şimdi DeğilÜye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.
< Bu ileti mobil sürüm kullanılarak atıldı >