SpringCloud笔记

SpringCloud

EUREKA

eureka:服务注册和发现中心。

eurekaServer:注册中的服务端,application.yml--hostname,server-url:default-zone:hostname:port

@EnableEurekaServer:在主启动类上标注注册中心

pom中添加:spring-cloud-starter-eureka-server // 表示为注册中心的服务端

服务注册

在服务提供者的pom中添加:spring-cloud-starter-eureka // 表示为注册中心的客户端;

在服务提供者的主启动类上添加:@EnableEurekaClient //表示向eureka注册服务

eureka的自我保护机制:

Eureka,在15分钟内超过85%的节点都没有正常的心跳,则认为出现了网络故障,当检测到某个服务不可用,或者有变更时,不立即注销该服务,而进行保留。当服务恢复时,自动退出保护模式,从而实现服务的高可用。

1,Eureka不再从注册表中移除因为长时间没收到心跳而应该过期的服务;

2,Eureka仍然能接受新服务的注册和查询请求,但是不会同步到其他节点上(即保证当前节点依然可用);

3,当网络稳定时,当前实例新的注册信息会被同步到其他节点中。

集群配置

域名映射,修改yml中的url

EUREKA与ZOOKEEPER的区别

// ACID A:原子性;C:一致性;I:隔离性;D:持久性

// CAP C:一致性;A:可用性;P:分区容错性

1,eureka遵守AP原则,zookeeper遵守CP原则;

2,zk,选举期间会有30s--120s的服务不可用,不够友好。

eureka,各个节点都是平等的,几个挂掉的节点不会影响正常节点工作。而当eureka客户端在向某个挂掉的接地那注册时如果发现连接失败,会切换到正常的节点(只要还有一台正常的节点)进行注册,从而保证了服务的可用,但是不保证查到的信息是最新的(强一致性)。

RIBBON负载均衡

ribbon是什么?提供客户端负载均衡算法。

LB分为:集中式负载均衡(偏硬件,F5),进程内负载均衡(偏软件,nigix)。

@LoadBalanced 开启

算法有:轮询,随机,根据响应时间加权,重试(默认轮询,当某个服务挂掉之后,重试几次之后会跳过进行轮询)等

自定义LB算法:

@RibbonClient(name=“服务名” configuration=“自定义算法类类名”) //该类不能和主启动类在同包下

hystrix熔断器

@hystrixCommand(类似于aop的异常通知)

服务熔断,服务降级

ZUUL路由网关

代理,路由,过滤

@EnableZuulProxy

能够对真实的服务名做映射处理,能够在访问路径上加上固定的前缀,能够忽略对直接使用微服务名的访问

分布式配置中心

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值