dubbo 路由指定如何指定到Controller的某个方法


公司项目需要迁移Spring Boot上面迁移过程中遇到一些问题和解决方案,在此记录下方便其他人查看Spring Boot介绍官方和网上有很多资料可供学习,本文以Maven为例介绍Spring Boot;另外项目中涉及配置信息等通过集中管理配置;

注:main方法所在的这个主要的配置类配置在根包名下,否则启动时无法找到相关依赖;

Spring Boot 其默认是集成web容器的启动方式由像普通Java程序一样,main函数入口启动其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat)通过配置文件(application.yml)的方式类修改相关server配置。

 以上ConfigToolkit配置成功并且相关配置信息,已导入然后在需要使用的地方直接注入对应的map

    在Spring Boot中使用Dubbo,不需要使用xml的方式来配置生产者和消費者本文使用@Bean注解的方式来进行配置。

 需要使用@WebFilter注解其中@Order注解表示执行过滤顺序,值越小越先执行;另外,war包形式如果自定义Filter如果引用其他服务@Resource

  • 启动类Application所在的这个主要的配置类配置在根包名下,否则启动时无法找到相关依赖;

后续会把相关demo包上传

再次测试发现结果变成了随机:

Eureka的服务治理强调了CAP原则中的AP,即可用性和可靠性它与Zookeeper这一类强调CP(一致性,可靠性)的服务治理框架最大的区别在于:Eureka为了实现更高嘚服务可用性牺牲了一定的一致性,极端情况下它宁愿接收故障实例也不愿丢掉健康实例正如我们上面所说的自我保护机制。

但是此时如果我们调用了这些不正常的服务,调用就会失败从而导致其它服务不能正常工作!这显然不是我们愿意看到的。

因为服务剔除的延迟consumer并不会立即得到最新的服务列表,此时再次访问你会得到错误提示:

但是此时8081服务其实是正常的。

因此Spring Cloud 整合了Spring Retry 来增强RestTemplate的重试能力当一次服务调用失败后,不会立即抛出一次而是再次重试另一个服务。

只需要简单配置即可实现Ribbon的重试:

根据如上配置当访问到某個服务超时后,它会再次尝试访问下一个服务实例如果不行就再换一个实例,如果不行则返回失败。切换次数取决于MaxAutoRetriesNextServer参数的值

我们重啟user-consumer-demo测试,发现即使user-service2宕机也能通过另一台服务实例获取到结果!

这里是修真院后端小课堂每篇汾享文从

【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】

八个方面深度解析後端知识/技能,本篇分享的是:

大家好我是IT修真院郑州分院第12期的学员张泉良,一枚正直纯洁善良的JAVA程序员今天给大家分享一下,

修嫃院官网JAVA任务二深度思考中的知识点——Validation 参数校验

    参数验证是一个常见的问题,无论是前端还是后台都需对用户输入进行验证,以此來保证系统数据的正确性

    对于web来说,有些人可能理所当然的想在前端验证就行了但这样是非常错误的做法,前端代码对于用户来说是透明的

    稍微有点技术的人就可以绕过这个验证,直接提交数据到后台参数验证随处可见,也是必不可少的

    前端做验证只是为了用户體验,后端才是最终的保障

    @Max(value) 被注释的元素必须是一个数字,其值必须小于等于指定的最大值

    在日志或者控制台输出校验的信息

    分组简单說: 解决实体中每个属性都是设置了参数检验但是在某个方法内只想检验部分属性任务,也可以叫分类,

     比如说有 用户名密码,手机号邮箱,年龄性别,我想要检验其中的任意2个属性(假设为手机号年龄),

      当然可以直接加入对应的注解如果换成手机号和密码,肯定又要写2个注解

     当字段过多,并且使用场景频繁时分组是个不错的选择

         这个不建议进行,现有的检验类型基本够如果有更多要求,建议使用逻辑判断这样更清晰,记录日志方便出现问题可以及时排查。

Q1:表单提交时,不填该表的内容,正常submit,默认为空字符串 ""怎么解決

A1:在前端验证是否为空,后端使用isEmpty方法或者@NotEmpty注解

Q3:数值性参数: 当输入为空时,字符串"",解析失败之后不能再进行其他判断,会出现NPE

A3:可以考虑使用自定义异常使用Spring Aop功能拦截异常,给出自定义的错误信息

今天的分享就到这里啦欢迎大家点赞、转发、留言、拍砖~

更多内容,可以加入IT交流群与大家一起讨论交流

这里是技能树·IT修真院:初学者转行到互联网的聚集地

我要回帖

更多关于 dubbo 路由指定 的文章

 

随机推荐