微服务

微服务


1.什么是微服务?
主要是将以前柔和在以前的系统安装一定的维度进行拆分,比如业务拆分,功能拆分等,最大限度的降低耦合度,每一个微服务相当于一个进程,可以单独的部署应用,整合在一起就是一套完成的业务系统

2.微服务之间是如何独立通讯的
同步:RPC,REST等
异步:消息队列

3.什么是服务熔断?什么是服务降级
服务熔断是应对微服务雪崩效应的一种保护机制,当某个微服务不可用或者响应时间太久的情况,在某个时间内达到一定次数(默认5秒内调用20次)启动熔断机制,可以返回指定错误信息
服务降级是当服务熔断后,改服务将不再被调用,客户端可以返回指定错误信息
springCloud运用Hystrix进行服务熔断与降级服务

5.springCloud和Dubbo有哪些区别?企业应该怎么选择
Dubbo采用的是RPC调用,
springCloud采用http的REST方式,
在一定程度上牺牲了调用上的性能,但是降低了代码的强依赖性,是微服务架构更加灵活
SpringCloud是分布式微服务架构的整体解决方案框架,它提供了包含服务注册(Eureka),负载均衡(Ribbon和Feign),路由网关(zuul),服务配置中心(SpringCloudConfig),服务断路(Hystrix),服务监控等一系列完整的微服务治理框架,并且完美适配spring技术项目,相对而言,Dubbo就有其局限性了
社区活跃度,dubbo2012年中断,2017年重启,5年的真空期+无法后续的维护保障

6.微服务的优缺点分别是什么?说下你在项目开发中碰到的坑)
优点:松耦合,聚焦单一业务功能,无关开发语言,团队规模降低
微服务可以轻松适应其他框架或技术。
单个进程的失败不会影响整个系统。
为大企业和小型团队提供支持。
可以在相对较短的时间内独立部署。
缺点:随着服务数量增加,管理复杂,分布式部署追踪问题困难

7.eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别?。
zookeeper 是CP原则,强一致性和分区容错性
eureka 是AP 原则 可用性和分区容错性
zookeeper当主节点故障时,zk会在剩余节点重新选择主节点,耗时过长,虽然最终能够恢复,但是选取主节点期间会导致服务不可用,这是不能容忍的
eureka各个节点是平等的,一个节点挂掉,其他节点仍会正常保证服务,

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值