微服务架构

微服务架构 单体架构能够很好地应对简单的业务系统。但是随着业务的扩张,功能的不断增加,单体架构面临着越来越多的挑战:

维护成本增加

  1. 团队越来越大,相应的沟通成本、管理成本、人员协调成本显著增加。
  2. 引起缺陷的原因组合多,导致分析、定位、修复缺陷的成本响应增高。
  3. 在自动化测试机制不完善的情况下,易导致“修复越多,缺陷越多”的恶性循环。

交付周期长

代码编译、检查,运行测试、构建、更能验证等,反馈周期变长。

新人培训周期长

对于新加入团队的成员,需要花更多的时间了解熟悉业务、配置环境、熟悉代码。

技术选型成本高

单体架构倾向于采用统一的技术平台或方案来解决所有问题。

可伸缩性差

  1. 无法按需伸缩。
  2. 资源有效利用率低。

构建全功能团队难

应用程序的复杂结构也会逐渐映射到研发团队的结构上。

微服务架构(Microservice Architect):

微服务架构是一种架构模式,它提倡将单块架构的应用划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。

每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通。

每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。

另外,应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应更具业务上下文,选择合适的语言、工具对其进行构建。

本质特征:

服务作为组件

围绕业务组织团队

关注产品而非项目

技术多样性

业务数据独立

基础设施自动化

演进式架构

优势:

边界性

  1. 业务独立
  2. 功能耦合度低

独立性

  1. 独立部署
  2. 按需伸缩

技术多样性

  1. 使用合适的语言或者工具
  2. 使用合适的数据存储

挑战:

分布式系统的复杂度

  1. 网络因素(带宽、超时)
  2. 数据一致
  3. 可用性

微服务测试

  1. 测试策略
  2. 自动化测试

运维成本高

  1. 环境配置
  2. 部署
  3. 监控

微服务的依赖管理

  1. 版本管理
  2. 服务依赖
  3. 服务治理

资料来源: http://www.cnblogs.com/Erik_Xu/p/6241359.html

http://www.infoq.com/cn/articles/analysis-the-architecture-of-microservice-part-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏服务端技术杂谈

哪些产品经理认为很简单的功能,其实技术很难实现?

在社交产品上看到一个有意思的话题:在产品看来很简单的需求,为什么在技术实现起来却很难?本是同根生相煎何太急。 第9条很搞笑; 1.-- 简单加一个在线聊天,最好...

30340
来自专栏腾讯大数据的专栏

2015年第一季度移动行业数据报告

2015年第一季度移动行业数据报告解析了移动设备,系统分布和网络状况等国内移动互联网现状。 ? ? ? ? ? ? ? ? ? 123

21060
来自专栏云计算D1net

关于无服务器计算,您需要知道的10件事

如果您阅读了2017年有关于IT特别是云计算方面的各种预测,您很有可能碰到“无服务器计算”这一术语。早在2014年亚马逊的网络服务(AWS)已推出了第一大无服务...

35460
来自专栏云计算D1net

什么是云原生应用 有哪些关键点?

最近讨论云原生应用越来越多,其是指原生为在云平台上部署运行而设计开发的应用。公平的说,大多数传统的应用,不做任何改动,都是可以在云平台运行起来的,只要云平台支持...

29570
来自专栏EAWorld

支撑企业IT精益运营:普元DevOps平台实践之路

本文目录: 一、普元DevOps平台建设历程 二、如何建设企业级的DevOps平台 明确定位:DevOps是覆盖IT全生命周期的生产线 理清思维:DevOps思...

45080
来自专栏别先生

大数据平台网站日志分析系统

1:大数据平台网站日志分析系统,项目技术架构图: ? 2:大数据平台网站日志分析系统,流程图解析,整体流程如下: ?   ETL即hive查询的sql;   但...

33670
来自专栏悦思悦读

持续发布那些事儿

什么是持续发布 持续发布这个说法,一般情况下确实是和敏捷开发联系在一起。敏捷开发的scrum模式的一个重要概念就是持续发布。 按照理论上的说法:scrum的每一...

32960
来自专栏逸鹏说道

解析微服务架构(一):什么是微服务

解析微服务架构系列文章将分几篇描述微服务的定义、特点、应用场景、企业集成架构的演进以及微服务转型思路和技术决策考虑等内容,并以IBM技术为例介绍如何实现微服务架...

33840
来自专栏云计算D1net

云计算带来的积极变化

在当今竞争激烈的行业市场,云计算提供了一个绝佳的机会,不只是为了创新,而是运营业务要比以往任何时候都更加快速、更具成本效益。这是一个非常有效的提供IT服务的平台...

43170
来自专栏逸鹏说道

解析微服务架构(二):融入微服务的企业集成架构

上一篇文章介绍了微服务架构的起源、定义、通用特性、常见概念误区、微服务架构与SOA架构比较、微服务架构收益以及企业引入微服务架构的策略。 本文将介绍融入微服务的...

32660

扫码关注云+社区

领取腾讯云代金券