RPC学习----------netty实现通讯

来源:互联网 发布:github for windows 编辑:程序博客网 时间:2024/05/17 02:42

1.什么是rpc?

RPC,即 Remote Procedure Call(远程过程调用),说得通俗一点就是:调用远程计算机上的服务,就像调用本地服务一样。

2.rpc框架有哪些?

目前主流的有webservice,dubbo,hsf等(其实是我用过的就这么多,o(╯□╰)o)

3.rpc图

应用,服务和注册表之间的关系如下(dubbo也是这样的,只是dubbo还多了一层monitor,记录服务的调用情况)


4.服务注册

可以用当前比较流行的zookeeper框架

5.服务注册是用来干嘛的?

其实就是将服务的调用地址暴漏出来,所以我们就可以将所有server的服务地址和端口写到zookeeper的节点上

6.rpc的大致运行流程

1)服务方启动后,将自己的服务地址和端口写入zookeeper

2)消费方消费服务时,根据zookeeper节点里面的地址内容调用对应的server上的服务

ps:zookeeper节点上通常会有多组服务地址内容,因为现在大型应用通常都是以集群方式部署的,所以提供服务的肯定有多个server,当然就有多个服务地址啦,我们可以去到服务列表后,通过取随机数从而做到简单的负载均衡

3)服务方消费方的通讯就可以用netty来实现


代码见:https://github.com/dingwang/Framework,其中的“rpc简单实现”提交记录就是根据上述原理所做的

参考:http://www.csdn123.com/html/topnews201408/67/12167.htm


0 0
原创粉丝点击