微服务架构和分布式架构的区别有:

1、含义不同;
2、概念层面不同;
3、解决问题不同;
4、部署方式不同;
5、耦合度不同。
其中,含义不同指微服务架构是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,而分布式系统是若干独立计算机的集合。

1、含义不同

微服务架构:微服务架构风格是一种将一个单一应用程序开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并且可通过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理,服务可用不同的语言开发,使用不同的数据存储技术。

分布式架构:分布式系统是若干独立计算机的集合,这些计算机对用户来说就像单个相关系统,即整个系统是由不同的计算机组成,而用户是无感知的,就像访问一台计算机一样。这里强调的是系统由不同物理上分离的计算机(服务器)组成。

2、概念层面不同

微服务架构:微服务是设计层面的东西,一般考虑如何将系统从逻辑上进行拆分,也就是垂直拆分。微服务可以是分布式的,即可以将不同服务部署在不同计算机上,当然如果量小也可以部署在单机上。

分布式架构:分布式是部署层面的东西,即强调物理层面的组成,即系统的各子系统部署在不同计算机上。

3、解决问题不同

微服务架构:微服务解决的是系统复杂度问题: 一般来说是业务问题,即在一个系统中承担职责太多了,需要打散,便于理解和维护,进而提升系统的开发效率和运行效率,微服务一般来说是针对应用层面的。微服务如果用在其它系统,如存储系统感觉怪怪的,就像说Mysql集群是微服务的,总觉得哪里不舒服。

分布式架构:分布式解决的是系统性能问题: 即解决系统部署上单点的问题,尽量让组成系统的子系统分散在不同的机器上进而提高系统的吞吐能力。

4、部署方式不同

微服务架构:微服务的应用可以部署在是同一个服务器,不一定是分散在多个服务器上。微服务架构是一项在云中部署应用和服务的新技术。微服务架构是一种架构模式,它将一个复杂的大型应用程序划分成多个微服务,这些小型服务都在各自独立的进程中运行。

分布式架构:分布式是将一个大的系统划分为多个业务模块,这些业务模块会分别部署到不同的机器上,通过接口进行数据交互。

5、耦合度不同

微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势,不过服务微服务化后带来的挑战也是显而易见的,例如服务粒度小,数量大,后期运维将会很难。

PS分布式是否属于微服务?
答案是属于。微服务的意思也就是将模块拆分成一个独立的服务单元通过接口来实现数据的交互。但是微服务不一定是分布式,因为微服务的应用不一定是分散在多个服务器上,他也可以是同一个服务器。这也是分布式和微服务的一个细微差别。

微服务架构和分布式架构的区别相关推荐

  1. 微服务架构和分布式架构有什么区别

    文章目录 1. 微服务架构 2. 分布式架构 3. 区别 4. 原文链接 1. 微服务架构 微服务最早由软件开发大师Martin Flower提出,以下是中文翻译: 微服务架构风格是一种将一个单一应用 ...

  2. 一文看懂Java微服务架构,WEB2.0,垂直架构,分布式架构,微服务架构

    Java微服务架构 目录: 了解开发环境&生成环境 WEB1.0 & WEB2.0 垂直架构 分布式架构 微服务架构 1.了解开发环境&生产环境 1.1 开发环境 平时在写代码 ...

  3. 单体 soa 微服务 区别_每日一读-从单体到微服务,这些年架构的演变

    写在前面的话 Stay Hungry Stay Foolish!!! 每天进步一点点!!! <每日一读>是博主每日学习的一篇文章所记录的笔记,大多数是提取文章中关键内容而成:文章类型不限, ...

  4. 单体架构、分布式架构、微服务概述

    单体架构.分布式架构.微服务概述 一.单体架构 二.分布式架构 三.微服务 总结 集群:同一个应用,部署在不同的服务器 服务:业务功能拆分独立成一个模块(业务模块) 一.单体架构 单体架构:将业务的所 ...

  5. 微服务实战:从架构到发布(二)

    引言:上篇文章介绍了微服务和单体架构的区别.微服务的设计.消息.服务间通信.数据去中心化,本篇会继续深入微服务,介绍其它特性. 治理去中心化 通常"治理"的意思是构建方案,并且迫使 ...

  6. 云原生时代微服务的高可用架构设计

    简介: 在8月20日"阿里巴巴技术质量精品课"上,来自蚂蚁的经国分享了对云原生时代微服务的高可用架构设计的全面解析,为大家介绍了应用架构演进路径.云原生时代的技术福利.高可用架构的 ...

  7. 微服务——最热门的架构

    微服务--最热门的架构 在大型互联网应用中,如何更为合理的划分系统和团队边界.如果更加有效的组织系统开发过程.如何通过技术手段识别和消除开发过程中的浪费成为广大软件开发和技术管理人员所需要思考的命题. ...

  8. 【2017年第3期】交通大数据:一种基于微服务的敏捷处理架构设计

    杜圣东, 杨燕, 滕飞 西南交通大学信息科学与技术学院,四川 成都 610031 摘要:面对智慧交通广泛的大数据应用场景和技术需求,一般大数据系统难以适应多种处理情况并做出快速响应.针对这一问题,首次 ...

  9. 架构的本质是管理复杂性,微服务本身也是架构演化的结果

    为应对如今无线优先和全渠道用户体验的需求和挑战,我们该如何设计灵活的面向体验的微服务架构?它有哪些模式和最佳实践?携程,Netflix和SoundCloud这些知名互联网公司是如何实践面向体验的微服务 ...

最新文章

  1. 如何使用 Druid 和 Kafka 构造 Kappa 架构完成流量分析
  2. IL入门之旅(三)——Dump对象
  3. 【数据结构与算法】之深入解析“按要求补齐数组”的求解思路与算法示例
  4. Mobaxterm常用的指令(基于linux)
  5. windows打开的winform当前焦点 是否是hwnd_推介几款 windows 下非常好用的工具
  6. ios端input 光标问题
  7. (05)FPGA入门条件
  8. 不止命令行-自定义VS生成事件
  9. 四月份面试题汇总(一)
  10. dyld Library not loaded @rpath libswiftCore dylib 解决
  11. np.concatenate 函数的使用
  12. VC操作Excel2003,Word2003的两种方式
  13. OpenStack本地存储选项的现在与未来
  14. android gesture,Android Gesture 手势创建以及使用示例
  15. 人工智能导论(专家系统)
  16. 微信html代码怎么换行,微信公众号代码区域换行问题(解决)
  17. Ubuntu和windows共享文件,Windows和windows共享文件
  18. 计算机40个快捷键,计算机快捷键40个_计算机常用快捷键大全分享
  19. cpu过载linux杀进程,Linux CPU过载判断以及分析
  20. [动态规划] 放置街灯 Uva 10859 - Placing Lampposts

热门文章

  1. python数据分析 - matplotlib绘图
  2. 关于webp图片格式初探
  3. 深入理解Activity启动模式之大结局
  4. linux alsa声卡命令,Linux ALSA声卡介绍及使用
  5. 攻防世界 Web supersqli 详解(堆叠注入)
  6. 8.0、Python基础---类(浅读)(下)
  7. Android手机流畅度测试,选手机!教你测试手机流畅度
  8. Java基于基于Springboot+vue的药品销售商城网站 在线购药 elementui毕业设计
  9. 养成前端、后端Debug的良好习惯
  10. 上月技术关注:Google大表