精华内容
下载资源
问答
  • 架构解密-从分布式微服务架构解密-从分布式微服务架构解密-从分布式微服务架构解密-从分布式微服务
  • 分布式微服务区别

    千次阅读 2020-08-13 23:38:58
    简单的来说,微服务是一种架构风格,是架构设计层面的概念;而分布式是一种项目系统的部署方式,是部署层面的概念。 分布式 分布式,即是将一个项目中的各个服务分散部署在不同的机器上的,一个服务可能负责几个功能...

    简单的来说,微服务是一种架构风格,是架构设计层面的概念;而分布式是一种项目系统的部署方式,是部署层面的概念。

    分布式系统

    分布式系统,即是将一个项目中的各个服务分散部署在不同的机器上的,一个服务可能负责几个功能,是一种面向服务的架构(SOA)。分布式系统可以看做是若干个独立计算机的集合,这些服务在不同的计算机上部署,但还是属于同一个项目。

    这些服务之间一般通过RPC(远程过程调用)来进行交互(调用)。分布式系统核心在我看来其实相当于是对RPC的应用,将一个整体项目中的各个服务进行拆分,将原本在本地调用的方式改为分开部署、远程调用,实现对系统一定程度的解耦和对物理资源的最大化利用,便于某个核心业务的单独横向扩展(集群)。

    微服务架构

    微服务是一种架构风格,是以开发一组小型服务的方式来作为一个独立的应用系统,每个服务都运行在自已的进程中,服务之间采用轻量级的HTTP通信机制 ( 通常是采用HTTP的RESTful API )进行通信。这些服务都是围绕具体业务进行构建的,并且可以独立部署到生产环境上。这些服务可以用不同的编程语言编写,并且可以使用不同的数据存储技术。对这些微服务我们只需要使用一个非常轻量级的集中式管理来进行协调。

    简而言之,微服务是一种架构风格,微服务就是很小的一个服务,服务即应用,亦即我们俗称的一个项目。相较于以往常见的单体应用,微服务的核心思想是将一个大项目的各个业务模块甚至某个单一功能抽离出来,作为一个单独的完整项目,单独部署,该应用只需要为该大项目或者其他项目的业务模块提供服务即可。

    分布式和微服务的区别总结

    从分布式和微服务的概念来看,都是对一个项目系统进行了拆分,一个是在部署层面,一个是在架构设计层面。但是微服务相较于分布式来说,细粒度更小,服务间的耦合度更低,并且可以说微服务一定是分服务分开部署的,所以其实微服务是基于分布式的,更像是对分布式系统的一种优化,因此很多时候微服务架构也被称为是分布式的架构,区别于分布式系统。

    并且可以预见的是,分布式系统最后都会向微服务架构演化,这是一种趋势, 不过服务微服务化后带来的挑战也是显而易见的,例如服务粒度小,数量大,后期运维将会很难等问题。

    展开全文
  • 分布式与微服务区别 要说分布式,我们先从单机架构说起。 单机:我们一开始学习编程的时候,往往就是一个项目,部署在一个机器上面。例如我们开发一个商城项目,直接部署在本地的一个tomcat上,这样子就是一个...

    分布式与微服务的区别

      要说分布式,我们先从单机架构说起。

      单机:我们一开始学习编程的时候,往往就是一个项目,部署在一个机器上面。例如我们开发一个商城项目,直接部署在本地的一个tomcat上,这样子就是一个单机架构模式。单机的缺点很明显,一点我们的项目运行期间出现故障(比如jvm内存溢出导致挂了),整个项目就访问不了,无法提供服务了。由此,集群部署就很有必要了。

      集群:集群就是将同一个项目,分别部署在多个节点上,通过负载均衡统一对外提供服务。比如我们的商城项目,分别部署在4个tomcat(也可以是同一个tomcat容器;可以是同一台机器,也可以不同,只要ip和端口不一样就可以了)上。如果其中一个节点故障了,其他3个节点还能正常提供服务。集群部署,除了能增强系统的吞吐量和效率外,还提高了可用性。

    集群是通过复制节点的方式实现的,即把整个项目都复制了。一个项目,肯定会有使用很频繁的功能和使用量比较少的功能;比如商城功能的商品管理功能等比较少使用,而下单功能相对被频繁使用。假如我们集群部署100个节点,显然每个节点都包含了整个项目的完整功能。但是其实我们的商品管理功能可能实际只需要部署几个几点即可。所以这种无差别复制,会造成一定程度上的资源浪费。由此,分布式架构就出现了。

    分布式:分布式架构,就是将单体应用,拆分成多个模块,每个模块部署在不同的机器上,每个模块统一由网关进行协调管理。个人对分布式的理解是,分布式的目的在于拆分系统解耦,从而达到分而治之的目的。拆了之后,我们的系统就不会出现牵一发而动全身的现象,而且还能对不同的模块分别不一样的资源。比如刚刚说商城项目,将项目拆分成商品管理模块和订单模块后。因为商品模块使用频率不高,从而我们可以给商品模块分配相对少的资源即可,比如只集群部署商品管理模块4个节点。而订单模块部署100个节点。

    微服务:微服务与分布式很相似,很多的观点是,可以把微服务看出是比较特殊的分布式。微服务的理念也是将项目进行拆分,但是区别是,微服务的拆分力度比分布式的要更小,而且微服务的拆分基本是垂直拆分,而分布式可以是水平拆分和垂直拆分。在部署上,两者的部署方式也存在一些不同;分布式强调将不同的模块部署到不同的机器,而微服务则没有强调是不同的机器;而且实际实践中,也会将不同的服务部署在同一机器上或者不同机器上。

    展开全文
  • 自从几十年前第一次引入分布式系统这个概念以来,出现了很多原来根本想象不到的分布式系统使用案例,但同时也引入了各种各样的新问题。当这些系统还是比较少比较简单的时候,工程师可以通过减少远程交互的次数来解决...
  • Dubbo、SpringCloud、zookeeper、mq、spring boot、kafka资料汇总
  • 分布式微服务是什么?二者的区别又是什么?

    千次阅读 多人点赞 2020-10-15 13:14:40
    文章目录一、分布式系统二、微服务架构三、分布式微服务区别 一、分布式系统 在《分布式系统原理范型》一书中有如下定义: “分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统”;...

    一、分布式系统

    在《分布式系统原理与范型》一书中有如下定义:

    分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统”;

    分布式系统是由一组通过网络进行通信、为了完成共同的任务而协调工作的计算机节点组成的系统。分布式系统的出现是为了用廉价的、普通的机器完成单个计算机无法完成的计算、存储任务。其目的是利用更多的机器,处理更多的数据

    分布式系统(distributed system)是建立在网络之上的软件系统。

    首先需要明确的是,只有当单个节点的处理能力无法满足日益增长的计算、存储任务的时候,且硬件的提升(加内存、加磁盘、使用更好的CPU)高昂到得不偿失的时候,应用程序也不能进一步优化的时候,我们才需要考虑分布式系统。因为,分布式系统要解决的问题本身就是和单机系统一样的,而由于分布式系统多节点、通过网络通信的拓扑结构,会引入很多单机系统没有的问题,为了解决这些问题又会引入更多的机制、协议,带来更多的问题。

    因此,随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,急需一个治理系统确保架构有条不紊的演进。

    Dubbo由此诞生。


    二、微服务架构

    任何技术的演进都是有迹可循的,任何新技术的出现都是为了解决原有技术无法解决的需求,所以,微服务的出现就是因为原来单体应用架构已经无法满足当前互联网产品的技术需求。微服务的设计就是为了不因为某个模块的升级和BUG影响现有的系统业务。

    微服务架构,核心就是为了解决应用微服务化之后的服务治理问题。

    在微服务架构之前还有一个概念:SOA(Service-Oriented Architecture)-面向服务的体系架构。

    微服务的特征:

    • 单一职责的。一个微服务应该都是单一职责的,这才是“微”的体现,一个微服务解决一个业务问题(注意是一个业务问题而不是一个接口)。
    • 面向服务的。将自己的业务能力封装并对外提供服务,这是继承SOA的核心思想,一个微服务本身也可能使用到其它微服务的能力。

    满足以上两点就可以认为是典型的微服务。

    应用微服务化之后,会出现一些问题:

    • 服务发现问题。一个微服务如何发现其他微服务呢?最简单的方式就是每个微服务里面配置其他微服务的地址,但是当微服务数量众多的时候,这样做明显不现实。所以需要使用到微服务架构中的一个最重要的组件:服务注册中心,所有服务都注册到服务注册中心,同时也可以从服务注册中心获取当前可用的服务清单。

    • 服务配置管理的问题。当服务数量超过一定程度之后,如果需要在每个服务里面分别维护每一个服务的配置文件,运维人员估计要哭了。那么,就需要用到微服务架构里面第二个重要的组件:配置中心

    • 以上应用内部的服务治理,当客户端或外部应用调用服务的时候怎么处理呢?服务A可能有多个节点,服务A、服务B和服务C的服务地址都不同,服务授权验证在哪里做?这时,就需要使用到服务网关提供统一的服务入口,最终形成典型微服务架构:

    在这里插入图片描述

    这便是一个典型的微服务架构,当然微服务的服务治理还涉及很多内容,比如:

    • 通过熔断、限流等机制保证高可用;
    • 微服务之间调用的负载均衡;
    • 分布式事务(2PC、3PC、TCC、LCN等);
    • 服务调用链跟踪等等。

    目前国内企业使用的微服务框架主要是Spring Cloud和Dubbo(或者DubboX),但是Dubbo那两年的停更严重打击了开发人员对它的信心,Spring Cloud已经逐渐成为主流


    三、分布式和微服务的区别

    分布式和微服的架构很相似,只是部署的方式不一样而已。

    分布式服务架构与微服务架构概念的区别与联系:

    • 分布式:分散压力。
      • 不同模块部署在不同服务器上;
      • 作用:分布式解决网站高并发带来问题;
      • 集群:相同的服务;
      • 多台服务器部署相同应用构成一个集群;
      • 作用:通过负载均衡设备共同对外提供服务;
      • SOA[组装服务/ESB企业服务总线];
      • 业务系统分解为多个组件,让每个组件都独立提供离散,自治,可复用的服务能力;
      • 通过服务的组合和编排来实现上层的业务流程;
      • 作用:简化维护,降低整体风险,伸缩灵活;
    • 微服务:分散能力。
      • 微服务[找到服务/微服务网关open API];
      • 架构设计概念:各服务间隔离(分布式也是隔离),自治(分布式依赖整体组合),其它特性(单一职责,边界,异步通信,独立部署)
      • 是分布式概念更加严格的执行;
      • SOA到微服务架构的演进过程;
      • 作用:各服务可独立应用,组合服务也可系统应用(巨石应用[monolith]的简化实现策略-平台思想).

    明确一个问题:分布式是否属于微服务?

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

    展开全文
  • 分布式架构是分布式计算技术的应用和工具,这些技术牵扯的内容非常广,相关的书籍也非常多,也没有涉及这些技术的细节,只是从各种分布式系统平台产生的背景和在软件开发中应用的情况来探讨它们的主要异同。...

    分布式架构是分布式计算技术的应用和工具,这些技术牵扯的内容非常广,相关的书籍也非常多,也没有涉及这些技术的细节,只是从各种分布式系统平台产生的背景和在软件开发中应用的情况来探讨它们的主要异同。

    微服务架构是一项在云中部署应用和服务的新技术。大部分围绕微服务的争论都集中在容器或其他技术是否能很好的实施微服务,而红帽说API应该是重点。

    微服务可以在“自己的程序”中运行,并通过“轻量级设备与HTTP型API进行沟通”。关键在于该服务可以在自己的程序中运行。通过这一点我们就可以将服务公开与微服务架构(在现有系统中分布一个API)区分开来。在服务公开中,许多服务都可以被内部独立进程所限制。如果其中任何一个服务需要增加某种功能,那么就必须缩小进程范围。在微服务架构中,只需要在特定的某种服务中增加所需功能,而不影响整体进程的架构。

    从概念理解,分布式服务架构强调的是服务化以及服务的分散化,微服务则更强调服务的专业化和精细分工;从实践的角度来看,微服务架构通常是分布式服务架构,反之则未必成立。所以,选择微服务通常意味着需要解决分布式架构的各种难题。

    区别分布式的方式是根据不同机器不同业务。

    将一个大的系统划分为多个业务模块,业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互。区别分布式的方式是根据不同机器不同业务。

    微服务更加强调单一职责、轻量级通信(HTTP)、独立性并且进程隔离。

    微服务与分布式的细微差别是,微服务的应用不一定是分散在多个服务器上,他也可以是同一个服务器。

    分布式是否属于微服务?

    不一定,如果一个很大应用,拆分成三个应用,但还是很庞大,虽然分布式了,但不是微服务。。微服务核心要素是微小。。

    微服务架构是分布式服务架构的子集

    微服务架构通过更细粒度的服务切分,使得整个系统的迭代速度并行程度更高,但是运维的复杂度和性能会随着服务的粒度更细而增加。

    微服务重在解耦合,使每个模块都独立。分布式重在资源共享与加快计算机计算速度。

    分布式:分散压力。微服务:分散能力。

    展开全文
  • 在本篇文章里小编给各位整理了关于微服务分布式区别以及相关知识点总结,有兴趣的朋友们学习下。
  • 分布式微服务到底有何区别

    千次阅读 2019-12-31 20:33:20
    一、微服务架构基本知识(spring-cloud) 1.1 什么是分布式? 不同模块部署在不同服务器上,对系统的水平拓展,分散单个服务器压力. 作用:分布式解决网站高并发带来问题 1.2 什么是集群? 多台服务器部署相同应用构成一个...
  • 分布式简单理解就是将服务分散部署在不同的服务器上,服务服务之间的调用也是通过RPC或其它方式来交互 关系 微服务在生产环境下大部分是通过分布式部署的,但是分布式部署的应用不一定是微服务架构的,比如集群
  • 对于java开发者遇到瓶颈,想要提升自己的,想要朝着架构师发展并对分布式架构感兴趣,对微服务架构感兴趣的同学朋友可以参考学习,下载积分不高,纯粹的分享,希望能帮助到你!
  • 集群,分布式微服务概念和区别理解

    万次阅读 多人点赞 2018-02-04 01:19:12
    集群是个物理形态,分布式是个工作方式。 分布式:一个业务分拆多个子业务,部署在不同的服务器上集群:同一个业务,部署在多个服务器上 1:分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器...
  • 分布式架构下,木桶理论同样存在,其性能高低是由于运行最慢的那个节点 决定的,因此一个集群中的机器配置尽量一致,Primarymirror实例的分布 也需要规划好。(例如:如果一个segment上的所有primary实例对应...
  • 一分钟弄懂什么是分布式微服务

    万次阅读 多人点赞 2018-10-18 21:33:31
    简单的说,微服务是架构设计方式,分布式是系统部署方式,两者概念不同 微服务是啥?这里不引用书本上的复杂概论了,简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以...
  • 分布式微服务是什么关系?

    千次阅读 2020-07-19 11:24:08
    但是分布式微服务在架构、作用和粒度上有所区别。因此,两者的关系是既相互联系又相互区别。本文主要带大家认识分布式微服务,并探讨一下两者的关系,感兴趣的小伙伴可以接着看下去。 1、微服务 微服务的意思也...
  • 集群、分布式微服务概念理解 集群是个物理形态,分布式是个工作方式 分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上 分布式是指将不同的业务分布在不同的地方。而...
  • 分布式微服务理解

    2020-09-12 20:54:17
    单个程序不同的是,微服务让你可以同时运行多个独立的应用程序,而这些独立的应用程序可以使用不同的编码或编程语言来创建。庞大而又复杂的应用程序可以由多个可自行执行的简单而又独立的程序所组成。这些较小的...
  • 分布式框架Zookeeper之服务注册订阅、大型公司面试必答之数据结构算法精讲、高性能网络编程必备技能之IONIO阻塞分析、互联网系统垂直架构之Session解决方案、探索JVM底层奥秘ClassLoader源码分析案例讲解、...
  • 下面就正经解释下三种结构的区别吧~ 单机结构  我想大家最最最熟悉的就是单机结构,一个系统业务量很小的时候所有的代码都放在一个项目中就好了,然后这个项目部署在一台服务器上就好了。整个项目所有的服务都由...
  • 浅谈分布式微服务

    千次阅读 2019-04-17 16:58:50
    最近的几年,互联网中分布式微服务成为开发者必不可少的技能,但是在很多人学习的过程中会混淆分布式微服务概念,导致在学习的过程中出现一种疑惑,接下来我将会细讲分布式微服务。 首先我们来讲一下分布式...
  • 本文凝聚了作者多年架构经验,内容覆盖网络、分布式微服务、存储、计算等。 深入浅出地讲解了云原生、Kubernetes和Service Mesh等热门技术,并详细剖析其原理,值得每个IT人士阅读。 不论你是有十几年研发经验及...
  • 1.分布式与集群 集群是个物理形态,分布式是个工作方式。  1. 分布式架构:多个子系统相互协作才能完成业务流程,系统之间需要进行通信。  2. 集群:同一个工程部署到多台服务器上。  3. 分布式架构优缺点:  ...
  • 详细的介绍了分布式架构相关方面的知识,对于了解分布式架构很有帮助
  • 分布式微服务、SOA

    2018-10-03 22:58:50
    分布式:分散压力 按功能点把一个完整的系统按照业务功能,拆分成 一个个独立的子系统 ,单独为某一节点添加服务器(不同模块部署在不同服务器上 ),需系统之间配合才能完成整个业务逻辑。 多个子系统之间相互协作,...
  • 架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从...
  • 架构解密-从分布式微服务_带索引书签目录超清扫描版。 这个是扫描版,带书签,质量超高超清晰的。
  • 集群,分布式微服务的概念区别

    千次阅读 2018-08-12 11:00:55
    集群是个物理形态,分布式是个工作方式。 分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上 1:分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 142,480
精华内容 56,992
关键字:

分布式与微服务区别