Skip to content

Protobuf RPC是一种基于TCP协议的二进制RPC通信协议的GO实现. JAVA实现:https://github.com/baidu/Jprotobuf-rpc-socket

License

Notifications You must be signed in to change notification settings

baidu-golang/pbrpc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

baidurpc

baidurpc是一种基于TCP协议的二进制高性能RPC通信协议实现。它以Protobuf作为基本的数据交换格式。 本版本基于golang实现.完全兼容jprotobuf-rpc-socket: https://github.com/Baidu-ecom/Jprotobuf-rpc-socket

Go Report Card Go codecov Releases Go Reference LICENSE

features:

  • 内置连接池,具备更高的性能,低延迟 QPS: 5w+
  • 支持自动重连功能[Done]
  • 支持附件发送[Done]
  • 支持超时功能[Done]
  • 压缩功能,支持GZip与Snappy[Done]
  • 集成内置HTTP管理功能[TODO]
  • Client支持Ha的负载均衡功能[Done]
  • 灵活的超时设置功能[Done] 基于timewheel实现
  • 分包chunk支持,针对大数据包支持拆分包的发送的功能[Done]
  • 支持Web管理能力以及内置能力[Done] 查看
  • 支持同步发布为Http JSON协议[Done] [>= v1.2.0] ​

Installing

To start using pbrpc, install Go and run go get:

$ go get github.com/baidu-golang/pbrpc

Which version

version protobuf package
<= 1.2.x github.com/golang/protobuf
1.3.x google.golang.org/protobuf

FYI: 由于这两个pb类库并不是完全兼容,官方推荐使用 google.golang.org/protobuf

使用说明与Demo

Quick Start(服务发布)
Quick Start(客户端调用)
同步发布http rpc服务
更多特性使用说明
Demo开发示例代码

License

brpc is Apache 2.0 licensed.

About

Protobuf RPC是一种基于TCP协议的二进制RPC通信协议的GO实现. JAVA实现:https://github.com/baidu/Jprotobuf-rpc-socket

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages