互联网技术必看面试题 之 Eureka

in 编程
关注公众号【好便宜】( ID:haopianyi222 ),领红包啦~
阿里云,国内最大的云服务商,注册就送数千元优惠券:https://t.cn/AiQe5A0g
腾讯云,良心云,价格优惠: https://t.cn/AieHwwKl
搬瓦工,CN2 GIA 优质线路,搭梯子、海外建站推荐: https://t.cn/AieHwfX9

说起Eureka,就不得不提起以下几点,所以这些也是学习微服务必备的知识

废话不多说,直接上干货

1 什么是微服务/微服务的特点

•单一职责:微服务中每一个服务都对应唯一的业务能力,做到单一职责

•微:微服务的服务拆分粒度很小,例如一个用户管理就可以作为一个服务。每个服务虽小,但“五脏俱全”。

•独立:自治是说服务间互相独立,互不干扰
–团队独立:每个服务都是一个独立的开发团队,人数不能过多。
–技术独立:因为是面向服务,提供Rest接口,使用什么技术没有别人干涉
–前后端分离:采用前后端分离开发,提供统一Rest接口,后端不用再为PC、移动端开发不同接口
–数据库分离:每个服务都使用自己的数据源
–部署独立,服务间虽然有调用,但能做到服务重启不影响其它服务。有利于持续集成和持续交付。每个服务都是独立的组件,可复用,可替换,降低耦合,易维护,易集群 Docker部署服务

2 不适用Eureka注册中心的情况下, 分布式服务必然面临的问题有哪些?

•服务管理
–如何自动注册和发现服务
–如何实现服务状态的监管
–如何实现动态路由,从而实现负载均衡

•服务如何实现负载均衡

•服务如何解决容灾问题

•服务如何实现统一配置

3 什么是高可用?什么是分布式?什么是集群?什么是负载均衡?

就算是在极端环境下,也可以正常提供服务,哪怕是网线坏了

集群(也就是说集群中的一些服务器挂了,也可以继续正常提供服务)
分布式、集群、负载均衡的关系

把一个大项目,根据业务需求拆成多个服务,分布式开发,最终部署的时候,也就是分布式部署


集群集群:把同一份代码 部署在N台服务器上

负载均衡 负载均衡:把请求分摊到多台服务器上集群之后,必须负载均衡;想要负载均衡,必须集群。

4 Eureka的工作原理

•Eureka:就是服务注册中心(可以是一个集群),对外暴露自己的地址

•提供者:启动后向Eureka注册自己信息(地址,提供什么服务)

•消费者:向Eureka订阅服务,Eureka会将对应服务的所有提供者地址列表发送给消费者,并且定期更新

•心跳(续约):提供者定期通过http方式向Eureka刷新自己的状态

5 什么是服务注册

服务提供者在启动时,会向EurekaServer发起一次请求,将自己注册到Eureka注册中心中去

6 什么是服务续约

在注册服务完成以后,服务提供者会维持一个心跳
(每30s定时向EurekaServer发起请求),
告诉EurekaServer:“我还活着”。这个我们称为服务的续约(renew);

7 什么是失效剔除

有些时候,我们的服务提供方并不一定会正常下线,可能因为内存溢出、网络故障等原因导致服务无法正常工作。Eureka Server需要将这样的服务剔除出服务列表。

因此它会开启一个定时任务,每隔60秒对所有失效的服务(超过90秒未响应)进行剔除。

8 什么是自我保护

当一个服务未按时进行心跳续约时,在生产环境下,因为网络延迟等原因,此时就把服务剔除列表并不妥当,因为服务可能没有宕机。

Eureka就会把当前实例的注册信息保护起来,不予剔除。生产环境下这很有效,保证了大多数服务依然可用。

关注公众号【好便宜】( ID:haopianyi222 ),领红包啦~
阿里云,国内最大的云服务商,注册就送数千元优惠券:https://t.cn/AiQe5A0g
腾讯云,良心云,价格优惠: https://t.cn/AieHwwKl
搬瓦工,CN2 GIA 优质线路,搭梯子、海外建站推荐: https://t.cn/AieHwfX9
扫一扫关注公众号添加购物返利助手,领红包
Comments are closed.

推荐使用阿里云服务器

超多优惠券

服务器最低一折,一年不到100!

朕已阅去看看