search
Giriş
Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın Türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
0 oy
68 gösterim
Websocket ve gRPC farkı tam olarak nedir?
Web Programlama kategorisinde 138 puan

1 cevap

0 oy

Bence burda websocket vs RPC konularını anlamak önem teşkil ediyor. gRPC benim anladığım bir RPC gerçekleştirimi (implementation)

 

RPC: Remote Procedure Call; yani istemciden bir procedure çağırmak istediğin zaman bu procedure çalıştırılması (execution) sunucu makinanın üzerinde olacağı bir mekanizma. Örneğin:

calculateSum(10, 50, 40)

Böyle bir procedure/function çağırdığını düşünelim. Bu çağırdığın fonksiyonun çalıştığı bilgisayar senin işlemcin olmayacak. Bir sunucuda çalışıp sana sonuç verecek. Yanlış hatırlamıyorsam bir sürü RPC gerçekleştirimi var. RMI vardı Java'da, ya da zamanında GWT kullanırken bir sürü kullanımı vardı.

 

Şimdi gelelim WebSocket'e. Ağ yapıları dersinde gördüğün TCP üzerinden iki bilgisayar arasında açtığın bi-directional veri aktarımı konusunun günümüzde browser/istemci -> sunucu arasındaki biraz daha güvenli haline biz WebSocket diyoruz. Yani temel amacı iki bilgisayar arasında veri akışınının sağlanması. Normal HTTP mesajlara göre ise HTTP payload kısımları hiç olmadığı için daha etkin, yani az yükle veri taşımış oluyorsun. Diğer konu HTTP gibi tek taraftan initialize (başlatma) etmene gerek yok. Hem sunucu hem de istemci tarafından başlatabiliyorsun.

 

Toparlarsak; RPC gerçekleştirimi için HTTP veya WebSocket kullanabilirsin. Burdan da aslında WebSocket'in biraz daha altta yatan bir teknoloji olduğunu çıkarabiliriz. RPC; WebSocket üzerine kurgulayabileceğin bir enstüman  diyebiliriz.

 

İyi çalışmalar.

 
 

 

 

6.2k puan
düzenledi

İlgili sorular

0 oy
1 cevap 146 gösterim
146 gösterim
İkisinin de streaming platformları için kullandığını biliyorum. Nasıl çalıştıklarından ve birbirinden farklarından kısaca bahseder misiniz?
9 Eylül 2022 Web Programlama kategorisinde Furkan Bilsel 138 puan sordu
0 oy
1 cevap 75 gösterim
75 gösterim
Tomcat, apache web server bunlar sadece backend aplikasyonlarının endpointlerini yayınlıyor değil mi? Başka ne gibi işlevleri var?
9 Eylül 2022 Web Programlama kategorisinde Furkan Bilsel 138 puan sordu
0 oy
1 cevap 934 gösterim
934 gösterim
URL ve URI kavramları arasındaki fark nedir?
19 Şubat 2019 Web Programlama kategorisinde kenan 6.2k puan sordu
0 oy
1 cevap 287 gösterim
287 gösterim
Program yazarken neden interface kullanıyoruz? Aslında tam olarak ne anlama geliyor açıklayabilir misiniz?
15 Kasım 2016 Java kategorisinde kambala 115 puan sordu
0 oy
1 cevap 45 gösterim