欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Go gRPC環(huán)境安裝教程示例詳解

 更新時間:2022年06月15日 17:24:10   作者:煙花易冷人憔悴  
這篇文章主要為大家介紹了Go gRPC環(huán)境安裝的教程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

前言

gRPC 是一個高性能、開源和通用的 RPC 框架,面向移動和 HTTP/2 設(shè)計,帶來諸如雙向流、流控、頭部壓縮、單 TCP 連接上的多復用請求等特。這些特性使得其在移動設(shè)備上表現(xiàn)更好,更省電和節(jié)省空間占用。

在 gRPC 里客戶端應用可以像調(diào)用本地對象一樣直接調(diào)用另一臺不同的機器上服務端應用的方法,使得您能夠更容易地創(chuàng)建分布式應用和服務。

gRPC 默認使用 protocol buffers,這是 Google 開源的一套成熟的結(jié)構(gòu)數(shù)據(jù)序列化機制,它的作用與 XML、json 類似,但它是二進制格式,性能好、效率高(缺點:可讀性差)。

安裝 protobuf

1.下載地址:https://github.com/protocolbuffers/protobuf/releases

根據(jù)自身電腦的操作系統(tǒng),選擇最新的releases版本下載

2.解壓后在bin目錄找到protoc.exe,然后把它復制到GOBIN目錄下

一般操作是把protoc.exe所在的目錄配到環(huán)境變量里,這里直接把protoc.exe復制到GOBIN目錄下,前提是環(huán)境變量已經(jīng)配置了GOBIN環(huán)境變量。

3.打開cmd,運行protoc --version

成功打印當前版本信息證明安裝成功了。

安裝相關(guān)包

安裝 golang 的proto工具包

go get -u github.com/golang/protobuf/proto

安裝 goalng 的proto編譯支持

go get -u github.com/golang/protobuf/protoc-gen-go

安裝 gRPC 包

go get -u google.golang.org/grpc

創(chuàng)建并編譯proto文件

1.新建proto文件夾,在里面新建simple.proto文件

 syntax = "proto3";// 協(xié)議為proto3
package proto;
// 定義發(fā)送請求信息
message SimpleRequest{
    // 定義發(fā)送的參數(shù)
    // 參數(shù)類型 參數(shù)名 標識號(不可重復)
    string data = 1;
}
// 定義響應信息
message SimpleResponse{
    // 定義接收的參數(shù)
    // 參數(shù)類型 參數(shù)名 標識號(不可重復)
    int32 code = 1;
    string value = 2;
}
// 定義我們的服務(可定義多個服務,每個服務可定義多個接口)
service Simple{
    rpc Route (SimpleRequest) returns (SimpleResponse){};
}

2.編譯proto文件

cmd進入simple.proto所在目錄,運行以下指令進行編譯

protoc --go_out=plugins=grpc:./ ./simple.proto

VSCode-proto3插件介紹

使用VSCode的朋友看這里,博主介紹一個VSCode插件,方便對編輯和編譯proto文件。

  • 擴展程序中搜索 VSCode-proto3,然后點擊安裝。
  • 在設(shè)置中找到setting.json文件,添加vscode-proto3插件配置
   // vscode-proto3插件配置
    "protoc": {
        // protoc.exe所在目錄
        "path": "C:\\Go\\bin\\protoc.exe",
        // 保存時自動編譯
        "compile_on_save": true,
        "options": [
            // go編譯輸出指令
            "--go_out=plugins=grpc:."
        ]
    }

每次編輯完proto文件后,只需要保存,它就會自動幫助完成編譯。而且代碼有高亮顯示,代碼自動補全,代碼格式化等功能。

教程源碼地址:https://github.com/Bingjian-Zhu/go-grpc-example

以上就是Go gRPC環(huán)境安裝教程示例詳解的詳細內(nèi)容,更多關(guān)于Go gRPC環(huán)境安裝教程的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Golang之sync.Pool使用詳解

    Golang之sync.Pool使用詳解

    這篇文章主要介紹了Golang之sync.Pool使用詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-05-05
  • 在ubuntu下構(gòu)建go語言開發(fā)環(huán)境的方法

    在ubuntu下構(gòu)建go語言開發(fā)環(huán)境的方法

    這篇文章主要介紹了在ubuntu下構(gòu)建go語言開發(fā)環(huán)境的方法,需要的朋友可以參考下
    2014-10-10
  • Go語言如何高效的進行字符串拼接(6種方式對比分析)

    Go語言如何高效的進行字符串拼接(6種方式對比分析)

    本文主要介紹了Go語言如何高效的進行字符串拼接(6種方式對比分析),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-08-08
  • 淺析Go語言中的map數(shù)據(jù)結(jié)構(gòu)是如何實現(xiàn)的

    淺析Go語言中的map數(shù)據(jù)結(jié)構(gòu)是如何實現(xiàn)的

    在?Go?中,map?是一種用于存儲鍵值對的數(shù)據(jù)結(jié)構(gòu),它提供了一種快速查找和訪問數(shù)據(jù)的方式,下面我們就來看看Go語言中是如何實現(xiàn)map數(shù)據(jù)結(jié)構(gòu)的吧
    2024-03-03
  • Go panic和recover函數(shù)使用細節(jié)深入探究

    Go panic和recover函數(shù)使用細節(jié)深入探究

    這篇文章主要為大家介紹了Go?的panic和recover函數(shù)使用細節(jié)深入探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • Go語言MD5加密用法實例

    Go語言MD5加密用法實例

    這篇文章主要介紹了Go語言MD5加密用法,實例分析了Go語言MD5加密的使用技巧,需要的朋友可以參考下
    2015-03-03
  • go?module化?import?調(diào)用本地模塊?tidy的方法

    go?module化?import?調(diào)用本地模塊?tidy的方法

    這篇文章主要介紹了go?module化?import?調(diào)用本地模塊?tidy的相關(guān)知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-09-09
  • Go語言編程中字符串切割方法小結(jié)

    Go語言編程中字符串切割方法小結(jié)

    這篇文章主要介紹了Go語言編程中字符串切割方法小結(jié),所整理的方法都來自字符串相關(guān)的strings包,需要的朋友可以參考下
    2015-10-10
  • Go單元測試對GORM進行Mock測試

    Go單元測試對GORM進行Mock測試

    這篇文章主要為大家介紹了Go單元測試對GORM進行Mock測試用例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • Golang爬蟲框架colly使用淺析

    Golang爬蟲框架colly使用淺析

    這篇文章主要介紹了Golang爬蟲框架colly的使用,colly是Go實現(xiàn)的比較有名的一款爬蟲框架,而且Go在高并發(fā)和分布式場景的優(yōu)勢也正是爬蟲技術(shù)所需要的,感興趣想要詳細了解可以參考下文
    2023-05-05

最新評論