7-7 IRule源码分析及自定义规则演示
自定义IRule
Ctrl+Shift+Alt+N搜索,ribbon-loadbalancer
所有的实现都在这个包下
包含了很多的规则
来看下RandomRule的规则继承AbstractLoadBalancerRule并实现choose方法。
全量的是所有的服务列表。在线的是保持在线的服务列表
获取下标
在存活的服务里面找到这个下标。并返回
自己写个规则
继承并实现这两个方法.
NIWS(Netflix Internal Web Services)的基础
返回null就是表示 无论如何都访问不到了。
RestConfig配置成自己的规则类MyRule
重启consumer服务。
http://localhost:7201/sayhello?message=hello
一般自定义规则是在灰度发布上用,例如新上线一个服务功能,让10%的流量先走新的服务,90%的流量还是走旧的服务。
实现思路
结束