Spring Cloud为什么会出现?

  1. 单体应用的缺陷
  •   复杂性高,所有的业务代码都集成再一个war包,各模块的关系混乱,代码质量难以管理
  • 技术债务,随着业务模块的不断增加、开发人员的更迭,会形成不出问题不进行代码优化的技术债务
  • 部署频率低,只要有新代码更新,必须重新部署
  • 可靠性差,可能某一模块的bug会影响整个应用
  • 扩展能力受限,单体应用只能进行整体进行扩展,无法根据业务模块的进行扩展
  • 技术更新受限,单体应用程序的技术往往固定,很难变更

2.我所理解的微服务

微服务目前还没有一个确切的定义。我所理解的微服务即:将以往的单体应用按功能划分为多个功能相对单一的服务,各个服务之间相互独立,运行和部署环境同样独立;各服务之间通过http协议进行通讯,以RESTFUL API接口对外提供服务。

3.微服务的优点与缺点

优点:

  • 易于开发与维护:聚焦特定业务、开发相对简单、复杂度低
  • 单个服务启动较快:代码量少、耦合度低
  • 局部修改、易于部署
  • 技术栈扩展灵活

缺点

  • 分布式结构:复杂度高,维护成本高
  • 重复劳动:相同的功能可能存在于多个微服务中,导致代码重复

4.微服务的设计原则:

  • 单一原则(single):关注本服务的功能,具有功能边界、
  • 服务自治:每个服务拥有独立的业务能力、独立的运行、部署环境。
  • 轻量级通讯:各服务之间可以进行通讯,并且是轻量级的通讯,可跨平台、跨语言,例如https
  • 微服务粒度:合理划分微服务的粒度,粒度太大违背微服务的设计初衷,太小浪费资源。

简单的微服务架构

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值