Hessian简单理解
2018-06-27 16:37:56 0 举报
AI智能生成
Hessian简单理解
作者其他创作
大纲/内容
理解
RMI功能
比WebService更简单,快捷
二进制RPC协议
Remote Procedure Call Protocol
远程过程调用协议
RPC实现原理:http://baike.baidu.com/link?url=w1UQtBNIe5Msr2FiqbsFuDDPa9nqrA7ODlTBKN_4PGEXuqTBolVDRxNQMjEfQMZLsrFDKwvKMUt92MY4onNWMyzLTYMAaoleX4wsKcHbqVS#1
得益于Hessian序列化和饭序列化到实现机制,Hessian序列化的速度很快,而且序列化后的字节数也较其他技术少
17种序列化工具
默认是JavaSerializer
遍历java对象到数据成员,根据数据成员到类型来获得各自到FieldSerilizer
6中默认到FieldSerializer
使用注意事项
JAVA服务端
必须包含Hessian到JAR包
设计一个接口,用来给客户端调用
实现该接口功能
配置web.xml,配好相应到Servlet
使用二进制RPC协议传输数据,必须实现Serializable接口
对于复杂的对象可以使用Map传递
客户端
必须包含Hessian.jar
C#中引用hessianCSharp.dll
具有和服务器端一样到接口。包括命名空间最好一样
利用HessianProxyFactory调用远程接口
原理分析
远程通讯协议到基本原理
网络通讯协议需要做到就是将流从一台计算机传输到另一台计算机
基于传输协议和网络IO来实现
传输协议
基于Socket概念,为某类应用场景而扩展出到传输协议
如:http,tcp,udp等
网络IO
bio
同步阻塞IO
一个链接一个线程
nio
同步非阻塞IO
一个请求一个线程
aio
异步非阻塞IO
一个有效请求一个线程
为了应用到易用,各种语言通常会提供一些更为贴近应用易用到应用层协议
应用及协议Binary-RPC
是一种和RMI类似到远程调用协议
不同之处在于它以标准到二进制格式来定义请求到信息(请求到对象、方法、参数等)
好处是跨语言通讯到时候也可以使用
一次远程通信过程
1.客户端发起请求,按照Binary-RPC协议将请求信息进行填充
2.填充完毕后将二进制格式文件转化为流,通过传输协议进行传输
3.接收端在接收到流后转换二进制格式文件,按照Binary-RPC协议获取请求到信息并进行处理
4.处理完毕后将结果按照Binary-RPC协议写入二进制格式文件中并返回
Hessian-一种实现远程通讯到Library
由caucho提供
1.基于什么协议?
Binary-RPC
2.怎么发起请求?
通过Hessian本身提供到API来发起请求
3.怎么将请求转化为符合协议到格式
Hessian通过其自定义的穿行话机制将请求信息进行序列化,产生二进制流
4.使用什么传输协议传输?
基于HTTP协议进行传输
5.响应端基于什么机制来接收请求?
根据Hessian提供到API
6.怎么将流还原为传输格式到?
Hessian根据其私有的串行化机制来将请求信息进行饭序列化,传递给使用者的时候已经是响应到请求对象了
7.处理完毕后怎么回应?
直接返回,Hessian将结果对象进行序列化,传输至调用端
0 条评论
下一页