微服务(3)

目录

11.DiscoveryClient的作用?

12.Eureka和Zookeeper都可以提供服务注册与发现功能,请说说两个的区别?

13.什么是网关?

14.网关的作用是什么?

[15.什么是SpringCloud Zuul(服务网关)?](#15.什么是SpringCloud Zuul(服务网关)?)


11.DiscoveryClient的作用?

可以从注册中心中根据服务别名获取注册的服务器信息。

12.Eureka和Zookeeper都可以提供服务注册与发现功能,请说说两个的区别?

Zookeeper保证了CP(C:一致性,P:分区容错性),

Eureka保证了AP(A:高可用性)

(1)当向注册中心查询服务列表时,我们可以容忍注册中心返回的是几分钟以前的信息,但不能容忍直接down掉不可用。也就是说,服务注册功能对高可用性要求比较高,但zk会出现这样一种情况,当master节点因为网络故障与其他节点失去联系时,剩余节点会重新选leader。问题在于,选leader时间过长,30到120秒,且选取期间zk集群都不可用,这样就会导致选取期间注册服务瘫痪。在云部署的环境下,因网络问题使得zk集群失去master节点是较大概率会发生的事情,虽然服务能够恢复,但是漫长的选取时间导致的注册长期不可用是不能容忍的。

(2)Eureka保证可用性,Eureka各个节点是平等的,几个节点挂掉不会影响正常节点的工作,剩余的节点仍然可以提供注册和查询服务。而Eureka的客户端向某个Eureka注册发现或发现时连接失败,则会自动切换到其他节点,只要有一台Eureka还在,就能保证注册服务可用,只是查到的信息可能不是最新的。除此之外,Eureka还有自我保护机制,如果在15分钟内超过85%的节点没有正常的心跳,那么Eureka就认为客户端与注册中心发生了网络故障,此时会出现几种情况:

①Eureka从不在注册列表中移除因为长时间没有收到心跳而应该过期的服务。

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

③当网络稳定时,当前实例新的注册信息会被同步到其他节点。因此,Euraka可以很好的应对因网络故障导致部分节点失去联系的情况,而不会像Zookeeper那样使整个微服务瘫痪。

13.什么是网关?

网关相当于一个网络服务架构的入口,所有网络请求必须通过网关转发到具体的服务。

14.网关的作用是什么?

统一管理微服务请求,权限控制,负载均衡,路由转发,监控,安全控制黑名单和白名单等。

15.什么是SpringCloud Zuul(服务网关)?

Zuul是对SpringCloud提供的成熟对的路由方案,他会根据请求的路径不同,网关会定位到指定的微服务,并代理请求到不同的微服务接口,他对外隐藏了微服务的真正接口地址。

三个重要概念:动态路由表,路由定位,反向代理:

动态路由表:Zuul支持Eureka路由,手动配置路由,这两种都支持自动更新。

路由定位:根据请求路径,Zuul有自己的一套定位服务规则以及路由表达式匹配。

反向代理:客户端请求到路由网关,网关受理之后,在对目标发送请求,拿到响应之后再给客户端。

他可以Eureka,Ribbon,Hystrix等组件配合使用。

相关推荐
李匠20243 小时前
C++GO语言微服务之图片、短信验证码生成及存储
开发语言·c++·微服务·golang
互联网搬砖老肖5 小时前
Web 架构之攻击应急方案
前端·架构
hwj运维之路5 小时前
k8s监控方案实践(三):部署与配置Grafana可视化平台
云原生·kubernetes·grafana
zizisuo5 小时前
9.3.云原生架构模式
云原生·架构
和计算机搏斗的每一天5 小时前
k8s之探针
云原生·容器·kubernetes
fanly117 小时前
凯亚物联网增加MQTT设备功能测试
微服务·surging microservice
pjx9879 小时前
微服务的“导航系统”:使用Spring Cloud Eureka实现服务注册与发现
java·spring cloud·微服务·eureka
风虎云龙科研服务器10 小时前
英伟达Blackwell架构重构未来:AI算力革命背后的技术逻辑与产业变革
人工智能·重构·架构
项目題供诗11 小时前
黑马k8s(四)
云原生·容器·kubernetes
杰克逊的日记11 小时前
大项目k8s集群有多大规模,多少节点,有多少pod
云原生·容器·kubernetes