文件名称:ensq_rpc:基于NSQ的RPC服务器
文件大小:141KB
文件格式:ZIP
更新时间:2024-06-13 02:14:08
Erlang
通过NSQ进行RPC 这是基于消息队列的RPC协议的实现。 它是通过以下方式实现的: 每个RPC端点都有一个接收requests的主题。 每个RPC客户端都有一个唯一的主题,可以在该主题上接收responses 。 每个请求都有: 版本。 使用的编码。 一个16字节(128位)的唯一ID(通常为uuid,但这是实现细节)。 承载请求有效负载的主体。 要答复的NSQD的主机和端口。 要答复的主题(等于RCP客户端的唯一主题)。 每个响应具有: 版本。 使用的编码。 可选地,当编码为二进制时,主体的编码。 请求的ID。 响应主体。 所有数据都被编码为大端。 编码方式 每条消息的前缀为一个字节,该字节指示使用以下编码的编码: 0:二进制-客户端无需进一步处理即可处理数据 1:JSON 2:BERT 3:msgpack 254:保留 255:保留:重新编码
【文件预览】:
ensq_rpc-master
----.gitignore(47B)
----rebar(131KB)
----Makefile(1KB)
----src()
--------ensq_rpc_sup.erl(739B)
--------ensq_rpc_proto.erl(6KB)
--------ensq_rpc_app.erl(361B)
--------ensq_rpc.erl(8KB)
--------ensq_rpc.app.src(224B)
--------ensq_rpc_handler.erl(380B)
----.travis.yml(52B)
----priv()
--------ensq_rpc.schema(805B)
----LICENSE(16KB)
----rebar.config(634B)
----dialyzer.mittigate(16B)
----README.md(2KB)
----include()
--------ensq_rpc.hrl(473B)