我编了一个go语言双向 RPC 调用的库:rpc2d

用数据流重定向的方法实现双向 RPC 调用,高效的实现从服务器 CALLBACK 客户端 API,基于 "net/rpc" 原生库。

安装: go get gitee.com/rocket049/rpc2d 或者go get github.com/rocket049/rpc2d

提供下列 API 和类型

type ProviderType
type RpcNode
    func Accept(l net.Listener, provider interface{}) (*RpcNode, error)
    func NewRpcNode(provider interface{}) *RpcNode
    func (self *RpcNode) Close()
    func (self *RpcNode) Dial(addr string) error

示例

在 test 目录中的 server.go / client.go 演示了如何实现双向调用,以及如何在服务器 API 中 CALLBACK 客户端 API。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容