gRPC是一款RPC框架,可以幫助用戶實(shí)現(xiàn)負(fù)載平衡,跟蹤,運(yùn)行狀況檢查等功能,軟件可以通過(guò)插拔來(lái)實(shí)現(xiàn)服務(wù)的提供和關(guān)閉,軟件可以將設(shè)備,移動(dòng)應(yīng)用程序和瀏覽器連接到后端來(lái)進(jìn)行服務(wù),適用于服務(wù)器的數(shù)據(jù)計(jì)算和應(yīng)用。
軟件特色
簡(jiǎn)單的服務(wù)定義
使用協(xié)議緩沖區(qū),功能強(qiáng)大的二進(jìn)制序列化工具集和語(yǔ)言來(lái)定義服務(wù)
快速啟動(dòng)并擴(kuò)展
只需一行即可安裝運(yùn)行時(shí)和開(kāi)發(fā)環(huán)境,并使用該框架每秒可擴(kuò)展至數(shù)百萬(wàn)個(gè)RPC
跨語(yǔ)言和平臺(tái)工作
自動(dòng)以多種語(yǔ)言和平臺(tái)為您的服務(wù)生成慣用的客戶端和服務(wù)器存根
雙向流和集成身份驗(yàn)證
雙向流和完全集成的可插入身份驗(yàn)證以及基于HTTP/2的傳輸
gRPC是可以在任何環(huán)境中運(yùn)行的現(xiàn)代開(kāi)源高性能RPC框架。它可以通過(guò)可插拔的支持來(lái)有效地連接數(shù)據(jù)中心內(nèi)和跨數(shù)據(jù)中心的服務(wù),以實(shí)現(xiàn)負(fù)載平衡,跟蹤,運(yùn)行狀況檢查和身份驗(yàn)證。它也適用于分布式計(jì)算的最后一英里,以將設(shè)備,移動(dòng)應(yīng)用程序和瀏覽器連接到后端服務(wù)。
使用說(shuō)明
開(kāi)始使用gRPC
為了最大化可用性,gRPC支持將依賴項(xiàng)添加到用戶選擇的語(yǔ)言(如果有)的標(biāo)準(zhǔn)方法。在大多數(shù)語(yǔ)言中,gRPC運(yùn)行時(shí)是作為軟件包提供的,可以在用戶的??語(yǔ)言包管理器中找到。
有關(guān)如何在項(xiàng)目中使用特定于語(yǔ)言的gRPC運(yùn)行時(shí)的說(shuō)明,請(qǐng)參閱以下文檔
C++: follow the instructions under the src/cpp directory
C#: NuGet package Grpc
Dart: pub package grpc
Go: go get google.golang.org/grpc
Java: Use JARs from Maven Central Repository
Kotlin: Use JARs from Maven Central Repository
Node: npm install grpc
Objective-C: Add gRPC-ProtoRPC dependency to po dspec
PHP: pecl install grpc
Python: pip install grpcio
Ruby: gem install grpc
WebJS: follow the grpc-web instructions
使用協(xié)議緩沖區(qū)
默認(rèn)情況下,gRPC使用 協(xié)議緩沖區(qū),這是Google成熟的用于序列化結(jié)構(gòu)化數(shù)據(jù)的開(kāi)源機(jī)制(盡管它可以與其他數(shù)據(jù)格式(例如JSON)一起使用)。這里是它的工作原理的快速介紹。如果您已經(jīng)熟悉協(xié)議緩沖區(qū),請(qǐng)隨時(shí)跳到下一部分。
使用協(xié)議緩沖區(qū)的第一步是為要在原始文件中序列化的數(shù)據(jù)定義結(jié)構(gòu):這是帶有.proto擴(kuò)展名的普通文本文件。協(xié)議緩沖區(qū)數(shù)據(jù)被構(gòu)造為 消息,其中每個(gè)消息都是信息的小邏輯記錄,其中包含一系列稱為字段的名稱/值對(duì)。這是一個(gè)簡(jiǎn)單的例子:
message Person {
string name = 1;
int32 id = 2;
bool has_ponycopter = 3;
}
然后,一旦指定了數(shù)據(jù)結(jié)構(gòu),就可以使用協(xié)議緩沖區(qū)編譯器protoc從原型定義中以首選語(yǔ)言生成數(shù)據(jù)訪問(wèn)類(lèi)。這些為每個(gè)字段(例如name()和)提供了簡(jiǎn)單的訪問(wèn)器set_name(),以及將整個(gè)結(jié)構(gòu)序列化為原始字節(jié)或從原始字節(jié)中解析出整個(gè)結(jié)構(gòu)的方法。因此,例如,如果您選擇的語(yǔ)言是C ++,則在上面的示例中運(yùn)行編譯器將生成一個(gè)名為的類(lèi)Person。然后,您可以在應(yīng)用程序中使用此類(lèi)來(lái)填充,序列化和檢索Person協(xié)議緩沖區(qū)消息。
您可以在普通的原始文件中定義gRPC服務(wù),并使用RPC方法參數(shù)和返回類(lèi)型指定為協(xié)議緩沖區(qū)消息:
// The greeter service definition.
service Greeter {
// Sends a greeting
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
string name = 1;
}
// The response message containing the greetings
message HelloReply {
string message = 1;
}
gRPC protoc與特殊的gRPC插件一起使用,可從您的原型文件生成代碼:您將生成生成的gRPC客戶端和服務(wù)器代碼,以及用于填充,序列化和檢索消息類(lèi)型的常規(guī)協(xié)議緩沖區(qū)代碼。
標(biāo)簽: 源碼相關(guān) RPC框架
下載地址
精品推薦
-
IntelliJ IDEA 2019
詳情 -
Microsoft VC++6.0安裝包
詳情 -
Microsoft VC++2015版運(yùn)行庫(kù)
詳情 -
VC++2019運(yùn)行庫(kù)
詳情 -
RobotStudio
詳情 -
Intel Visual Fortran
詳情 -
Microsoft Visual Studio 2022
詳情 -
Microsoft VC++2010運(yùn)行庫(kù)安裝包
詳情 -
源碼編輯器4.0
詳情 -
博途V18破解授權(quán)軟件
詳情 -
GX Works2
詳情 -
microsoft visual studio 2019免費(fèi)版
詳情 -
hypermill2021超級(jí)加密狗破解版
詳情 -
西門(mén)子博途v17破解版
詳情 -
星三好圖形化編程軟件官方最新版
詳情 -
VBSEdit9
詳情
-
6 源碼智造編輯器
裝機(jī)必備軟件
網(wǎng)友評(píng)論