SpringCloud是Spring开发团队开发的为了解决分布式系统的一个全面的方案,也可以说SpringCloud是分布式系统的一个完整的解决方案。SpringCloud并不是一个具体的项目是多个项目的融合其中就包含Eureka。
为什么需要服务发现组件(Eureka):
没有发现服务的组件的编码是通过Rest的实现方式调用对应服务端口的方法,我们需要将服务提供者的网络地址和端口号写在代码中或者写在配置文件中。这种方式会有一些问题:
1、当ip地址发生变化时将会影响的服务消费者。
2、在生产环境中可能每个为服务会部署多个实例来实现容灾和负载均衡,需要系统由自动伸缩能力和扩展能力,通过这种方式实现不了。
为了解决这种问题服务的消费者需要一个服务发现机制,而Eureka就是其中的一种。
在开发使用Ereuka时非常简单。在SpringBoot的基础上载maven中引入对应的依赖就可以了。下面创建3个模块分别是服务的发现Eureka,服务的消费者Consumer,服务的提供者Provider。
项目的模块其中一个消费者,一个提供者,和3个服务注册中心(集群),为什么使用3个注册中这样可以保证项目的稳定,当一个注册服务挂掉,不影响消费者访问服务,我这项目不是生产项目,没有提供多个服务提供者和消费者。
首先创建 microservicecloud-eureka-7101 项目,对应的配置文件为
1 2 3 4 5 6 7 8 9 10 11 |
|