net core 3.0 之Grpc新特性小試牛刀
阿新 • • 發佈:2019-08-22
相信微服務大傢伙都有聽說和知道,好處弊端咱也不多說了,Grpc算是一個比較全面的微服務框架,也得到微軟的支援
總結下來就是,跨平臺,可靠,通訊快,擴充套件性強,網路消耗小,模板多語言通用
光說好處,沒有弊端嗎,自然是有的
最大的問題可能就是無法直接通過瀏覽器呼叫Grpc服務,最主要是Grpc使用了Http/2傳輸而瀏覽器不允許呼叫方需要使用 HTTP/2,或提供對基礎 HTTP/2 框架的訪問
但是官方也提供了曲線救國的方式,gRPC Web是 gRPC 團隊提供有限的 gRPC 支援在瀏覽器中的其他技術(引用官方文件)。
話不多說,咱們直接先上兩個官方連結,
https://grpc.io/docs/
https://docs.microsoft.com/zh-cn/aspnet/core/grpc/?view=aspnetcore-3.0
和HttpApi有啥區別,如下圖
看的出來微軟對Grpc得支援還挺上心得,居然把Grpc放到3.0中直接提供官方支援,還可以直接生成應模板,看來微軟真的在開源的道路上大步前行啊。
咱就不說一些理論性的東西了,上邊連結裡得文章介紹得比我官方詳細。現在.NetCore 3.0還處於預覽版,正式版出來相信會有更好的支援和體驗
Grpc在3.0中, 也是遵循微軟一貫的風格,對開發者友好,極度舒適得開發體驗。重大變化的變化
3.0支援編寫好的.proto檔案直接. 方法名,就可以使用,無需把proto檔案生成為.cs 檔案再引用到專案中(微軟默默幫我們做好了,咱只要定義好protoi介面和引數,關心程式碼業務就行了)