W3Cschool
恭喜您成為首批注冊(cè)用戶(hù)
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
目前,Kitex 支持了 thrift 和 protobuf 兩種編解碼協(xié)議。
Kitex 支持了 Thrift 的 Binary 協(xié)議,暫時(shí)沒(méi)有支持 Compact 協(xié)議。
生成代碼時(shí)指定 thrift 協(xié)議,也可以不指定,默認(rèn)就是 thrift:
kitex -type thrift ${service_name} ${idl_name}.thrift
kitex -type thrift -service ${service_name} ${idl_name}.thrift
我們針對(duì) thrift 的 binary 協(xié)議編解碼進(jìn)行了優(yōu)化,具體優(yōu)化細(xì)節(jié)參考 “Reference - 高性能 Thrift 編解碼 " 篇章,假如想要關(guān)閉這些優(yōu)化,生成代碼時(shí)可以加上 ?-no-fast-api
? 參數(shù)。
Kitex 對(duì) protobuf 支持的協(xié)議有兩種:
如果 IDL 文件中定義了 streaming 方法則走 gRPC 協(xié)議,否則走 Kitex Protobuf。沒(méi)有 streaming 方法,又想指定 gRPC 協(xié)議,需要 client 初始化做如下配置(server 支持協(xié)議探測(cè)無(wú)需配置) :
// 使用 WithTransportProtocol 指定 transport
cli, err := service.NewClient(destService, client.WithTransportProtocol(transport.GRPC))
只支持 proto3,語(yǔ)法參考 https://developers.google.com/protocol-buffers/docs/gotutorial
注意:
生成代碼時(shí)需要指定 protobuf 協(xié)議:
kitex -type protobuf -I idl/ idl/${proto_name}.proto
kitex -type protobuf -service ${service_name} -I idl/ idl/${proto_name}.proto
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話(huà):173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: