美文网首页
SPRINGCLOUD服务调用:FEIGN

SPRINGCLOUD服务调用:FEIGN

作者: 心魔_4cef | 来源:发表于2018-01-10 21:51 被阅读0次

    大家好,我是IT修真院武汉分院第11期学员,一枚正直善良的java程序员。今天给大家分享一下,任务拓展:SPRINGCLOUD服务调用:FEIGN

    1.背景介绍

    什么是spring cloud?

    spring cloud是一个基于spring boot实现的微服务架构开发工具。

      它为微服务架构中涉及的配置管理、服务治理、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、

      分布式会话和集群状态管理等操作提供了一种简单的开发方式。

    2.知识剖析

    在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的。

      Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。这里讲解下基于feign。

    3.常见问题

    客户端启动找不到datasource

    4.解决方案

    这是因为spring boot默认会加载org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration类,

    DataSourceAutoConfiguration类使用了@Configuration注解向spring注入了dataSource bean。

    因为工程中没有关于dataSource相关的配置信息,当spring创建dataSource bean因缺少相关的信息就会报错。

    5.编码实战

    服务端配置

    main方法上需要注解exclude=...

    这是因为spring boot默认会加载org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration类,DataSourceAutoConfiguration类使用了@Configuration注解向spring注入了dataSource bean。因为工程中没有关于dataSource相关的配置信息,当spring创建dataSource bean因缺少相关的信息就会报错。

    因为我仅仅只是使用spring boot来写一些很简单的例子来学习它,在Application类上增加@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})

    阻止spring boot自动注入dataSource bean

    客户端端口8765

    服务端配置

    实现类继承core包接口

    端口8762,spring.application.name=service-hi,和服务端对应

    注册中心已启动。

    启动客户端,成功调用到服务端接口

    6.扩展思考

    ribbon+resttemplate和feign的区别

    这两者的区别就是在客户端上,如何调用服务端。rebbon+resttemplate:使用resttemplate查找服务端url,这点和springrmi、tuscany很像,类似Name.LookingUp("url")一样

    而feign则是在接口上注解@FeignClient,在其方法里注解和controller同样的@RequestMapping,两者的区别在于客户端的接口

    7.参考文献

    参考一:https://www.cnblogs.com/yql1986/p/6819097.html

    参考二:http://blog.csdn.net/forezp/article/details/69808079

    8.更多讨论


    undefined_腾讯视频

    技能树.IT修真院

    “我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

    这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧

    直接点击此链接:http://www.jnshu.com/login/1/18302507

    相关文章

      网友评论

          本文标题:SPRINGCLOUD服务调用:FEIGN

          本文链接:https://www.haomeiwen.com/subject/wjsanxtx.html