springcloud如何实现服务的注册和发现
本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。 点击链接欢迎加入感兴趣的技术领域群。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
SpringCloud作为微服务的架构,是支持自定义组件的。下面,从套装组件说明 SpringCloud 套装组件 -- > 服务注册与发现中心: Eureka 使用,服务端,在启动类Application,添加@EnableEurekaServer注解,并且在配置文件,配置相关ServiceUrl等,可根据环境、所需,定制化配置,详情,可以参考官方使用API,当然也可以使用@DiscoveryServer,之前区别,可以自己去弥补下,本篇不再赘述 客户端,在启动类Application,添加@EnableEurekaClient,同样的做相关配置。 以上为服务注册发现大致实现,详细参照官方介绍,很简单
服务在发布时 指定对应的服务名(服务名包括了IP地址和端口) 将服务注册到注册中心(eureka或者zookeeper) 这一过程是springcloud自动实现 只需要在main方法添加@EnableDisscoveryClient 同一个服务修改端口就可以启动多个实例 调用方法:传递服务名称通过注册中心获取所有的可用实例 通过负载均衡策略调用(ribbon和feign)对应的服务