不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2018-11-04 20:36  分类:Java库/系统 

sigh,很遗憾,没有写完整,还有很多想做而没有做的事情,总结一下想做而没有做的事情吧

1)性能测试,没有条件和环境给我做这个事情

2)对portal,对页面的支持,没有一个可以直观的可视页面

3)注册中心对zookeeper的支持

4)监控中心链路调用的追踪的支持,这个很重要,不过没有做

作者:php-note.com  发布于:2018-11-04 20:33  分类:Java库/系统 
作者:php-note.com  发布于:2018-11-04 20:30  分类:Java库/系统 

本小节测试一下限流的功能,首先我们先定义一个简单的类,配置一下它单位时间最大的调用次数

作者:php-note.com  发布于:2018-11-04 20:26  分类:Java库/系统 

因为在某些场合下,服务提供者和服务消费者是直接可以调用的,不需要通过注册中心,本小节测试直连的调用:

作者:php-note.com  发布于:2018-11-04 20:16  分类:Java库/系统 

进入了基本的测试篇,首先我们先进入基本的代码测试,我们先跑通代码:

作者:php-note.com  发布于:2018-11-04 20:09  分类:Java库/系统 

本来想多写点文字的,不过发现自己的表达能力的确有限,现在还是理解为啥大神都是贴代码,不做解释了,的确很难说明一切,大神的代码易懂,看到代码就基本上知道啥意思了,这就是所谓的妙笔生花吧,我不能,所以多写一点文字多加一点注释,这也是没有办法的事情

作者:php-note.com  发布于:2018-11-04 20:08  分类:Java库/系统 

对于远程调用来说,最高境界就是让使用者不知道此处代码是远程调用一样,感觉就是调用本地的某个普通方法,封装底层调用的细节,这是我们服务消费端最后要做的事情

作者:php-note.com  发布于:2018-11-04 20:05  分类:Java库/系统 

所谓负载策略,其实相对比较简单,某个消费者去远程调用某个服务,不过提供这个服务不止一个实例,那么建立的长连接就不止一个,所以需要做的事情就是根据某个策略在这个长连接中选择一个进行通讯

本Demo RPC只实现了三个比较常用的负载策略

1)随机

2)加权随机

3)轮询

作者:php-note.com  发布于:2018-11-04 20:03  分类:Java库/系统 

订阅服务看起来是比较简单容易实现的功能,乍一看,就是发送订阅服务的名称给注册中心,然后注册中心反馈给服务消费者,感觉万事大吉,其实并不是这样的,这块是比较容易实现的,使用Netty很容易就能实现了,但是写的时候就会发现各种问题

作者:php-note.com  发布于:2018-11-04 20:00  分类:Java库/系统 

服务消费者也就是我们最最核心的主角,它是整个RPC中的主角,一切都是为它服务的,注册中心为其提供订阅功能,服务提供者,更不用说,消费者叫一声,你敢不答应吗?