了解微服务架构

系统架构设计

在应用系统的内部,如何根据业务、技术、组织、灵活性、可扩展性以及可维护性等多种因素,将应用系统划分成不同的部分,并使这些部分彼此之间相互分工相互协作,从而为用户提供某种特定的价值的方式。

微服务架构

原因

三层架构存在很多弊端,不满足业务发展的需求

三层架构

表示层、业务逻辑层、数据访问层(只是逻辑分层不是物理分层,所有代码还在同一个进程中运行,只是单层架构

单跨架构

优点:易于开发,易于测试,易于部署,易于水平伸缩
缺点:维护成本大,持续交付时间长,新人培育时间长,技术选型成本高,可扩展性差

概念

微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务于服务间采用轻量级的通信机制互相沟通(通常是基于 HTTP 的 RESTful API)。每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等。

特性

1、单一职责
2、轻量级通信:服务之间通过轻量级(指语言无关、平台无关的交互方式)的通信机制实现互通互联
3 、独立性:每个服务都是独立的业务单元,与其他服务高度解耦,只需要改变当前服务本身,就可以完成独立的开发、测试和部署。
4、进程隔离:不同服务可以部署在不同主机上

挑战

1、分布式系统的复杂性(性能,可靠性,异步,数据一致性
2、运维成本:每个服务都需要独立地配置、部署、监控和收集日志
3、自动化部署:每个服务都独立部署,交付周期短且频率高,人工部署已经无法适应业务的快速变化
4、DevOps与组织架构;开发人员和运维人员的角色发生了变化,开发者将承担起整个服务的生命周期的责任,包括部署和监控;而运维则更倾向于顾问式的角色,尽早考虑服务如何部署。因此,按需调整组织架构、构建全功能的团队。
5、服务间依赖测试
6、服务间依赖管理

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值