RPC çerçevesi ve Apache Thrift nedir?


101

Bir Üniversite projesi için Apache Thrift'i öğrenmem gerekiyor . Bu öğreticide dediği gibi, bu bir RPC çerçevesidir ve Thrift için belgeleri dışında bulabildiğim tek belgeydi .

Birisi bana RPC çerçevesinin ne olduğunu ve bunun Apache Thrift ile nasıl bir ilgisi olduğunu söyleyebilir mi?

Yanıtlar:


159

Bir RPC çerçeve genel olarak aynı makinede farklı bir makinede ya da sadece başka bir işlem üzerinde, uzak bir süreçte kod parçası aramak olmak programcı sağlayan araçlar kümesidir.

Apache Thrift'in özel durumunda, verimli olacak şekilde tasarlanmış ve hem işletim sistemi platformlarında hem de programlama dillerinde kullanılabilen bir çerçeveden bahsediyoruz. Ek olarak, taşımalar (soketler, borular vb.) Ve protokoller (ikili, JSON, hatta sıkıştırılmış) ile ilgili esnekliğe ve ayrıca SSL veya SASL desteği gibi daha fazla seçeneğe sahipsiniz.

Örneğin , bir Linux makinesinde, HTTP üzerinden JSON tabanlı bir protokol aracılığıyla dünyaya bir miktar hizmet sunan, C ++ ile yazılmış bir sunucu kurabilirsiniz. Bu hizmet, bir Windows makinesinde çalışan Python'da yazılmış bir istemci programı tarafından çağrılabilir. Hem sunucu hem de istemci için kod, bir Thrift IDL dosyasından oluşturulur. Çalıştırmak için, temelde yalnızca amaçlanan program mantığını eklemeniz ve tüm parçaları bir araya getirmeniz gerekir.

Apache Thrift için en iyi tek referans hala Apache Thrift Teknik Raporudur . Bazı detaylarda biraz modası geçmiş olmasına rağmen, temel kavramlar hala geçerlidir. Bir başka iyi okuma Diwaker Gupta'nın "Kayıp Rehber" ve son olarak Randy Abernethy'nin yakında çıkacak olan kitabı .

Yeni başlayanlar için, Apache Thrift eğitim paketi ile başlamayı tavsiye ederim , bu örnekler birçok temel özelliği göstermektedir. Sorularla karşılaşırsanız, burada SO'da veya Thrift posta listelerinde sorabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.