我理解的微服务

1、什么是微服务?
微服务是将传统把所有功能打包在一个WAR包的开发方式按业务进行划分,每个微服务都有自己的数据库,并对外提供REST接口。
前端通过代理(API Gateway)来找后端服务,而服务间交互则通过进程间通信(IPC)实现。
传统开发方式:

微服务架构:


2、为什么要用微服务?
一般来说是因为新架构能解决旧方式无法解决的问题,而对任务事情来说都是有利有弊,新架构也是在一定的场景下才更有优势,只是这个场景越来越普遍而已,实际上就方式也有其优点。
单体式应用存在问题:
  • 开发效率低:所有的开发在一个项目改代码,递交代码相互等待,代码冲突不断
  • 代码维护难:代码功能耦合在一起,新人不知道何从下手
  • 部署不灵活:构建时间长,任何小修改必须重新构建整个项目,这个过程往往很长
  • 稳定性不高:一个微不足道的小问题,可以导致整个应用挂掉
  • 扩展性不够:无法满足高并发情况下的业务需求
  • 采用新技术难:设想你有两百万行采用XYZ框架写的代码。如果想改成ABC框架,无论是
  • 时间还是成本都是非常昂贵的,即使ABC框架更好。在无法逾越的鸿沟面前,你不得不
  • 在最初选择面前低头
微服务能更好地解决以上问题,但也存在挑战:
  • 多服务运维难度
  • 系统部署依赖
  • 服务间通信成本
  • 数据一致性
  • 系统集成测试
  • 重复工作
  • 性能监控


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值