EJB、RMI、XMLRPC、Hessian、Thrift 、Protobuf

Java中实现分布式的方式有:EJB、RMI、XMLRPC、Web Service、Hessian、Thrift 、Protobuf、NIO(Netty、Mina)安全

EJB

优点:可扩展性好,安全性强,支持分布式事务处理。网络

劣势:不能跨语言;配置相对复杂,不一样J2EE容器之间很难作无缝迁移并发

RMI

优点:面向对象的远程服务模型;基于TCP协议上的服务,执行速度快。框架

劣势:不能跨语言;每一个远程对象都要绑定端口,不易维护;不支持分布式事务JTA,RMI框架对于安全性、事务、可扩展性的支持很是有限。分布式

Web Service

优点:跨语言、跨平台,SOA思想的实现;安全性高;能够用来兼容legacy系统的功能高并发

劣势:性能相对差,不支持两阶段事务性能

Hessian

优点:使用简单,速度快;跨语言,跨平台;能够用来兼容legacy系统的功能。对象

劣势:安全性的支持不够强,不支持两阶段事务事务

NIO(Mina/Netty)

优势:基于TCP通讯,效率上高于HTTP的方式,非阻塞IO应对高并发绰绰有余。根据具体的须要制定数据传输的格式,可扩展性强。效率

缺点:不能跨语言,没法穿透防火墙。

Protobuf

单纯的序列化反序列化库;

ICE和Thrift

不只包括序列化反序列化功能,仍是RPC框架

ICE的功能更完备,若是说Thrift是网络框架,那么ICE就是解决方案。

相关文章
相关标签/搜索