Eureka是单点单台服务器的,挂掉怎么办?一般我们是需要来多台服务器的,我们需要高可用。
搞2个eureka,让它们互相注册!
如何互相注册?
在eureka项目中,多启动一个eureka,第一个端口8761,第二个端口8762。
1)在eureka1配置8762
2)在eureka2配置8761
eureka的其中一台挂了,其它也会挂,要避免这个情况,需要在client项目中配置2个地址:
避免一台挂掉,另一台可用。
3) 在client项目配置8761、8762
三台eureka怎么互相注册?
1)在eureka1配置8762、8763
2)在eureka2配置8761、8763
3)在eureka3配置8761、8762
4) 在client项目配置8761、8762、8763
eureka总结:
1.EnableDiscoveryClient注解和EnableEurekaClient注解的问题
Eureka支持多种注册中心,
—>EnableDiscoveryClient注解在使用任何Eureka支持的注册中心时都可以使用,是一个通用的注解.
—>而EnableEurekaClient注解只有在使用Eureka作为注册中心时才可以使用,是Eureka注册中心的专用注解,在使用其他注册中心的时候不管用.
所以,在使用Eureka作为注册中心的时候,推荐使用EnableEurekaClient注解,在使用其他注册中心的时候,使用EnableDiscoveryClient注解
@EnableEurekaServer 用来启动注册中心server,各个服务启动时,都会在注册中心注册,包括其他的注册中心
@EnableEurekaClient 用来启动注册中心client
3.有心跳检测,健康检查,负载均衡等功能
4.Eureka的高可用,生产上建议两台以上,各自分别注册
5.在分布式系统中,服务注册中心是最重要的基础部分
分布式系统为什么需要服务发现??
注册中心扮演着服务之间桥梁的关系;
服务发现的两种方式:
客户端发现:Eureka
服务端发现:Nginx、zookeeper、kubernetes
注册中心与代理。
微服务的特点:异构(不同语言,不同类型的数据库)
SpringCloud的服务调用方式:REST