springCloud+idea犯的错1
springCloud+idea经验1
1.建moudle项目,右击项目new一个个moudle
2.eureka-server配置没问题,跟着走ok https://blog.****.net/forezp/article/details/70148833
3.server-hi 即client中接口路径写掉,报错
4.换端口启动,注册之前,没有做这个
换端口:
**错误:**没做同时启动多个服务,而是一在重启一个服务
**改正:**那么改端口,实现一个项目启动多个服务就要这样:
5.继续走,轻松搞定,ribbon和feign的负载均衡顺利实现。。。
6. 断路器(Hystrix)
feign熔断轻松搞定。。。(建议使用这个!feign整合了Hystrix,只用配置开启就ok)
但是ribbon 熔断就出问题了阿西吧 开启server-hi服务负载均衡都可以,关闭server-hi服务就gg,第一感觉是 @HystrixCommand(fallbackMethod = “hiError”) 的回调没执行。
解决:
然后在Hystrix Dashboard (断路器:Hystrix 仪表盘)这里,发现dashboard 的依赖注入失败,原来是
,断路器仪表盘的artifactId错了:
应该为:spring-cloud-starter-netflix-hystrix-dashboard
即:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>
然后问题又来了:一波接一波,心态心态!!断路器表盘报错连不上:
解决:参考这个吧:
/**
* 在2.0版本下需要在启动类中添加如下配置才可以访问断路器仪表盘
* 访问url为:http://localhost:8764/hystrix
* 在页面填写路径: http://localhost:8764/hystrix.stream
*
* @return
*/
@Bean
public ServletRegistrationBean getServlet() {
HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();
ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);
registrationBean.setLoadOnStartup(1);
registrationBean.addUrlMappings("/hystrix.stream");
registrationBean.setName("HystrixMetricsStreamServlet");
return registrationBean;
}
综上所述:
emmmm.这里是springCloud,服务中心到Hystrix熔断(第一篇到第四篇)遇到的错,都有点莫名其妙。所以,仔细、耐心学习效率才高!
加油!
我的SpringCloundDemo 码云 链接:https://gitee.com/lblxxy/springCloudDemo.git 可作参考