This commit is contained in:
@@ -421,7 +421,7 @@
|
||||
</pre></div>
|
||||
<br/>
|
||||
|
||||
<h3><a id="convert_bson_buffer" class="anchor" href="#" aria-hidden="true"><span class="octicon octicon-link"></span></a>BSON的协议格式</h3>
|
||||
<h3><a id="convert_bson_struct" class="anchor" href="#" aria-hidden="true"><span class="octicon octicon-link"></span></a>BSON的协议格式</h3>
|
||||
<p> BSON类似Java自带的Serializable, 其格式如下: <br/>
|
||||
1). 基本数据类型: 直接转换成byte[] <br/>
|
||||
2). SmallString(无特殊字符且长度小于256的字符串): length(1 byte) + byte[](utf8); 通常用于类名、字段名、枚举。 <br/>
|
||||
|
||||
4
net.html
4
net.html
@@ -642,7 +642,7 @@
|
||||
<h3><a id="net_sncp" class="anchor" href="#" aria-hidden="true"><span class="octicon octicon-link"></span></a>SNCP 协议</h3>
|
||||
<p>
|
||||
SNCP(Service Node Communicate Protocol)协议是RedKale独有的一种传输协议,用于进程之间的通信,即请求方的<a href="service.html#service_remote" target="_blank">远程模式Service</a>与响应方的Service之间的通信。可以看成是RMI(远程接口调用)的同款,主要区别在于RedKale里SNCP几乎是透明的,写一个普通的Service通过配置即可实现远程调用,而不需要专门针对远程写接口。SNCP服务的配置与HTTP差不多,只是SNCP不需要Servlet,SncpServlet是通过Service动态生成的。<br/>
|
||||
SNCP的数据包分包头和包体。包头描述请求的Service信息,请求包的包体描述参数的BSON,响应包的包体描述回调的参数对象和结果对象的BSON。<br/>
|
||||
SNCP的数据包分包头和包体。包头描述请求的Service信息,请求包的包体描述参数的<a href="convert.html#convert_bson_struct" target="_blank">BSON值</a>,响应包的包体描述回调的参数对象和结果对象的<a href="convert.html#convert_bson_struct" target="_blank">BSON值</a>。<br/>
|
||||
包头固定长度为72字节,其结构如下:
|
||||
</p>
|
||||
<table style="margin: auto;">
|
||||
@@ -657,7 +657,7 @@
|
||||
<tr><td>结果码</td><td style="text-align: center;">4</td><td>请求方的值固定为0,响应方的值视为错误码,为0表示成功,非0为失败。</td></tr>
|
||||
</table>
|
||||
<p>
|
||||
包体数据结构为 ([参数序号][参数BSON值])* N + [0][结果对象BSON]。 其中参数序号从1开始,只有当Service的方法存在<a href="service.html#service_dyncall" target="_blank">@DynCall回调</a>才会有参数BSON,序号为0表示为结果对象的BSON值。若方法为<font color="blue">void</font>返回类型,则不存在结果对象BSON值。
|
||||
包体数据结构为 ([参数序号][参数BSON值])* N + [0][结果对象BSON]。 其中参数序号从1开始,只有当Service的方法存在<a href="service.html#service_dyncall" target="_blank">@DynCall回调</a>才会有参数<a href="convert.html#convert_bson_struct" target="_blank">BSON值</a>,序号为0表示为结果对象的<a href="convert.html#convert_bson_struct" target="_blank">BSON值</a>。若方法为<font color="blue">void</font>返回类型,则不存在结果对象<a href="convert.html#convert_bson_struct" target="_blank">BSON值</a>。
|
||||
</p>
|
||||
|
||||
<h3><a id="net_diy" class="anchor" href="#" aria-hidden="true"><span class="octicon octicon-link"></span></a>自定义协议</h3>
|
||||
|
||||
Reference in New Issue
Block a user