首先grpc最大的使用場景是微服務,go語言很容易編譯成不依賴第三方動態鏈接庫的可執行程序,而且這個可執行程序通常也不大,這個特性對容器化非常友好。所以go順利成為微服務領域扛把子的語言,k8s,etcd,docker這些核心組件都是用golang實現的。
其次你如果了解go的grpc的話,你會看到很多grpc的插件,現在很多go服務化框架都不會僅僅提供grpc接口,利用插件功能順帶把http接口也實現了,也就是說一個服務提供了grpc和restfulapi。
最后一個應該是go的寫grpc服務的代碼比較簡潔,go的grpc框架隱藏了很多grpc的細節,給用戶用的時候非常簡單,你幾乎只需要關心你的業務代碼就可以。