分布式通信的几种方式

1、RPC(Remote Produce Call)

RPC是远程过程调用协议,基于C/S模型调用。过程可以理解为本地分布式对象向本机发请求(不用自己编写底层通信程序),通过网络向服务器发送请求,服务器对象接收参数后进行处理,把处理后的结果发送回客户端。

2、RMI(Remote Method Invocation)

RMI和RPC一样属于调用远程的方法,可以将RMI视为用Java语言实现了RPC协议。区别在于RPC不支持对象通信只支持对象传输,这也是RMI相比于RPC的优点之处。

3、JMS(Java Remote Service)

JMS是各个Java类之间传递消息的标准,支持P2P(点对点)和pub/stub(发面订阅)两种消息模型。优点在于:支持异步通信、消息生产者和消费者耦合程度低;应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无须专用连接来连接它们。

4、EJB(Enterprise Java Bean)

EJB是Java EE中的一个规范,该规范描述了分布式应用程序需要解决的事务处理,安全、日志、分布式等问题,Sun公司实现自己定义的这一标准相当于自己分布一个标准。EJB是一个特殊的Java类,按照Java服务器接口定义,放在容器里可以帮助该类管理事务、分布式、安全等,一般情况下只有大型分布式系统才会用到EJB,小型程序不会用到。

5、Web Service

Web Service是网络间跨语言、跨平台的分布式系统间的通信标准,传输XML、JSON等格式的数据,应用比较广泛。

你可能感兴趣的:(分布式通信的几种方式)