gRPC学习记录(一)--概念性知识
前幾天剛發(fā)了一個如何學(xué)習(xí)一門新技術(shù),現(xiàn)在正好遇到了要學(xué)習(xí)的東西,因為重新找了工作,所以新公司使用的技術(shù)需要自己快速上手,那么快速學(xué)習(xí)就是必須掌握的一門技能了.下面根據(jù)之前的博文展示如何快速入門一門新技術(shù).(本篇很多內(nèi)容都摘抄自網(wǎng)絡(luò))
1.gRPC是什么?
搜尋百科博客之類的可以查看到很多資料.
Paste_Image.png
gRPC 是一個高性能、開源和通用的 RPC 框架,面向移動和 HTTP/2 設(shè)計,基于protobuf 3.x,基于Netty 4.x +。目前提供 C、Java 和 Go 語言版本,分別是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js,Python, Ruby, Objective-C,PHP和C#支持.gRPC基于HTTP/2標(biāo)準(zhǔn)設(shè)計,帶來諸如雙向流、流控、頭部壓縮、單 TCP 連接上的多復(fù)用請求等特。這些特性使得其在移動設(shè)備上表現(xiàn)更好,更省電和節(jié)省空間占用。
gRPC基于定義服務(wù)的思想,定義可以遠程調(diào)用的方法,包括方法的參數(shù)和返回類型。在服務(wù)器端,服務(wù)器實現(xiàn)此接口并運行一個gRPC服務(wù)器來處理客戶端調(diào)用。在客戶端,客戶端有一個“存根stub”(簡稱為某些語言的客戶端),提供與服務(wù)器相同的方法。所有的數(shù)據(jù)傳輸都使用protobuf。
關(guān)鍵詞: RPC HTTP/2 protobuf 3.x Netty 4.x (記錄關(guān)鍵詞,這些可能是需要你自己額外補充的知識)
gRPC有幾個優(yōu)點:
- 在服務(wù)定義方面很簡單,可以很輕松地搭建出一個RPC的調(diào)度或者是P2P相互之間調(diào)度的框架。
- gRPC是語言無關(guān)、平臺無關(guān)的,它有很多種不同的實現(xiàn)。如果寫好一個Protobuf協(xié)議定義,可以輕松地去生成不同語言的協(xié)議框架。
- 它支持雙向的流的調(diào)用,在做一個分布式系統(tǒng)或者是相互調(diào)用的系統(tǒng)時.
2.同類技術(shù)有哪些?
這些搜一下作為了解知識.
http://colobu.com/2016/09/05/benchmarks-of-popular-rpc-frameworks/
3.gRPC解決的是什么問題?
這個問題可以理解為RPC解決了什么問題,gRPC在此基礎(chǔ)上做了哪些便捷優(yōu)化?
RPC 的主要目的是為組件提供一種相互通信的 方式,使這些組件之間能夠相互發(fā)出請求并傳遞這些請求的結(jié)果。
gRPC客戶端應(yīng)用程序可以就像調(diào)用本地對象方法一樣直接調(diào)用不同服務(wù)器上的應(yīng)用程序方法,使您更容易創(chuàng)建分布式應(yīng)用程序和服務(wù)。
參考: http://www.tuicool.com/articles/VNnae2
4.在這之前都是怎么解決這些問題的?
這個還真不清楚,可能是http接口吧
5.gRPC的組成部分
<dependency><groupId>io.grpc</groupId><artifactId>grpc-netty</artifactId><version>1.0.3</version> </dependency> <dependency><groupId>io.grpc</groupId><artifactId>grpc-protobuf</artifactId><version>1.0.3</version> </dependency> <dependency><groupId>io.grpc</groupId><artifactId>grpc-stub</artifactId><version>1.0.3</version> </dependency>這一步主要是對整個技術(shù)的了解,不需要很深入,我現(xiàn)在對這個東西還是不懂,只知道他能幫我的A項目調(diào)用B服務(wù)的接口.下一步就是入門的Hello world了.
作者:此博廢棄_更新在個人博客
鏈接:https://www.jianshu.com/p/5742496141f8
來源:簡書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的gRPC学习记录(一)--概念性知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: gRPC客户端创建和调用原理解析
- 下一篇: gRPC学习记录(二)--Hello W