精华内容
下载资源
问答
  • 分布式微服务的关系
    2021-10-29 09:55:42

    刚接触微服务及分布式这块,对这些概念有些懵圈,看了一些文章了解了一下,为了不忘记决定记录一下,如有理解不对的地方,欢迎各位大佬指教

    微服务

    微服务简单理解就是将功能模块的多个功能,拆分为多个小功能服务,具体拆分多细的颗粒度,取决于需求项目需要,在服务之间可以通过RPC或其它方式来相互交互。

    分布式

    分布式简单理解就是将服务分散部署在不同的服务器上,服务与服务之间的调用也是通过RPC或其它方式来交互

    关系

    微服务在生产环境下大部分是通过分布式部署的,但是分布式部署的应用不一定是微服务架构的,比如集群部署,它是把相同应用复制到不同服务器上,但是逻辑功能上还是单体应用

    区别

    1、微服务指的是将应用模块拆分成细颗粒度的手段,为了达到降低开发成本,以及达到松耦合的目的。
    2、分布式其实可以理解成一种部署方式,将服务分别部署在不同的服务器上达到高并发,高可用的目的。

    更多相关内容
  • Java优秀书单推荐 分布式 微服务 架构 并发 jvm 网络
  • 中间件 分布式 微服务

    千次阅读 2018-11-26 16:22:03
    分布式计算环境(Distributed Computing Environment): 分布式应用程序运行的通用环境,即使机器、操作系统、网络不同。如一个负载均衡服务器Load Balance(如Nginx),多个Web服务器Web Ser...

    中间件:
    连接独立的应用程序或系统的软件。即使应用程序或系统有不同的接口,通过中间件也能交换数据。类比主板,可沟通U盘、磁盘、光盘的不同接口,进行数据分享。

    分布式计算环境(Distributed Computing Environment):
    分布式应用程序运行的通用环境,即使机器、操作系统、网络不同。如一个负载均衡服务器Load Balance(如Nginx),多个Web服务器Web Server(如Tomcat),一个缓存服务器Cache Server,(如memcache),以及一个共享数据库DB(如Mysql),就可供多个客户端Client调用了,当然负载均衡服务器、缓存服务器、共享数据库也可以是多个。
    完备的分布式体系:
    分布式任务处理服务:负责具体的业务逻辑处理
    分布式节点注册和查询:负责管理所有分布式节点的命名和物理信息的注册与查询,是节点之间联系的桥梁
    分布式DB:分布式结构化数据存取
    分布式Cache:分布式缓存数据(非持久化)存取
    分布式文件:分布式文件存取
    网络通信:节点之间的网络数据通信
    监控管理:搜集、监控和诊断所有节点运行状态
    分布式编程语言:用于分布式环境下的专有编程语言,比如Elang、Scala
    分布式算法:为解决分布式环境下一些特有问题的算法,比如解决一致性问题的Paxos算法
    集群是机器的管理方式,分布式是数据的操作方式。


    一个任务拆解成多个小任务,运行在不同的机器上,是分布式;相同的任务,可以运行在不同的机器上,是集群,如百度时的搜索任务可在不同的服务器上运行。

    分布式就像把一个长的算式分成几个短算式,让几个人算。集群就像几个长算式,让几个人算。

     

    微服务:
    服务之间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API),每个服务都围绕着具体的业务进行构建,并且能够被独立的构建在生产环境。如WebService中同一模块操作可集聚在一个服务网址上。将单体服务根据业务逻辑拆解为独立的微服务,增强应用模块化,可供独立的团队进行开发、部署、维护、扩展。
     

    展开全文
  • 分布式微服务的区别 1.颜老师,分布式微服务有什么区别呢?网上说啥的都有,越看越晕了。 答:分布式的核心就一个字:拆。只要是将一个项目拆分成了多个模块,并将这些模块分开部署,那就算是分布式。 如何拆呢...

    分布式和微服务的区别
    1.颜老师,分布式和微服务有什么区别呢?网上说啥的都有,越看越晕了。

    答:分布式的核心就一个字:拆。只要是将一个项目拆分成了多个模块,并将这些模块分开部署,那就算是分布式。

    如何拆呢?有两种方式:水平拆分,或垂直拆分(也称为“横向拆分”和“垂直拆分”),具体如下:

    水平拆分:根据“分层”的思想进行拆分。例如,可以将一个项目根据“三层架构”拆分成 表示层(jsp+servlet)、业务逻辑层(service)和数据访问层(dao),然后再分开部署:把表示层部署在服务器A上,把service和dao层部署在服务器B上,然后服务器A和服务器B之间通过dubbo等RPC进行进行整合(在左下角的“阅读原文”里有dubbo的视频课程,可以点击学习),如图所示。
    img

    **垂直拆分:**根据业务进行拆分。例如,可以根据业务逻辑,将“电商项目”拆分成“订单项目”、“用户项目”和“秒杀项目”。显然这三个拆分后的项目,仍然可以作为独立的项目使用。像这种拆分的方法,就成为垂直拆分。

    img

    什么是微服务呢?

    从名字就能知道,“微服务”就是非常微小服务

    微服务可以理解为一种非常细粒度的垂直拆分。例如,以上“订单项目”本来就是垂直拆分后的子项目,但实际上“订单项目”还能进一步拆分为“购物项目”、“结算项目”和“售后项目”,如图。

    img

    现在看图中的“订单项目”,它完全可以作为一个分布式项目的组成元素,但就不适合作为微服务的组成元素了(因为它还能再拆,而微服务应该是不能再拆的“微小”服务,类似于“原子性”)。

    总结:

    分布式拆了就行。

    微服务细粒度的垂直拆分。

    展开全文
  • 架构解密-从分布式微服务_带索引书签目录超清扫描版。 这个是扫描版,带书签,质量超高超清晰的。
  • 什么是集群、分布式微服务? 什么是集群 集群是指将多台服务器集中在一起,每台服务器都实现相同的业务,做相同的事情。但是每台服务器并不是缺一不可,存在的作用主要是缓解并发压力和单点故障转移问题。我们可以...

    什么是集群、分布式和微服务?

    什么是集群

    集群是指将多台服务器集中在一起,每台服务器都实现相同的业务,做相同的事情。但是每台服务器并不是缺一不可,存在的作用主要是缓解并发压力和单点故障转移问题。我们可以利用一些廉价的符合工业标准的硬件构造高扩展、高性能、低成本、高可用的系统,简单的来说就是同一个业务,部署在多个服务器上

    什么是分布式
    分布式服务是指将多台服务器集中在一起,服务是分散部署在不同的机器上的。每台服务器都实现总体中的不同业务,做不同的事情。一个服务可能负责几个功能,是一种面向 SOA 的架构。各分开部署的部分彼此通过各种通讯协议交互信息,并且每台服务器都缺一不可,如果某台服务器故障,则部分功能缺失,或导致整体无法运行。

    分布式存在的主要作用是大幅度的提高效率,缓解服务器的访问和存储压力。区别分布式的方式是一个业务分拆多个子业务,部署在不同的服务器上。

    什么是微服务

    微服务的概念和分布式比较相似,微服务是一种架构风格。简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能。每个微服务仅关注于完成一件任务并很好地完成该任务,这个服务可以单独部署运行。 各个微服务之间是松耦合的,服务之间可以通过 RPC 来相互交互。每个微服务都是由独立的小团队开发、测试、部署,上线,负责它的整个生命周期。

    在做架构设计时,当你估算过最大用户量和并发量后,计算出单个应用服务器能否满足需求。如果用户量只有几百人的小应用,单体应用就能搞定,即所有应用部署在一个应用服务器里。如果是很大用户量,且某些功能会被频繁访问,或者某些功能计算量很大,建议将应用拆解为多个子系统,各自负责各自功能,这就是微服务架构。

    微服务的设计是为了不因为某个模块的升级和 BUG 影响现有的整个系统业务。微服务与分布式的细微差别是,微服务的应用不一定是分散在多个服务器上,它也可以是同一个服务器。

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

    集群、分布式、微服务的异同及联系

    1. 分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。

    例如:如果一个任务由 10 个子任务组成,每个子任务单独执行需 1 小时,则在一台服务器上执行该任务需 10 小时。

    采用分布式方案,提供 10 台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。(这种工作模式的一个典型代表就是 Hadoop 的 MapReduce 分布式计算模型)

    采用集群方案,同样提供 10 台服务器,每台服务器都能独立处理这个任务。假设有 10 个任务同时到达,10 个服务器将同时工作,1 小时后,10 个任务同时完成。这样整体来看,还是 1 小时内完成一个任务。

    2.分布式与微服务的关系
    分布式和微服务的架构很相似,只是部署的方式不一样而已。生产环境下的微服务肯定是分布式部署的,分布式部署的应用不一定是微服务架构的。比如集群部署,它是把相同应用复制到不同服务器上,但是逻辑功能上还是单体应用。

    总结:

    如果你的业务很简单,访问量也很少,那所有应用放一台服务器也可以流畅的运行,这个时候连集群都不需要用。

    如果你的访问量很少,但是业务很复杂,打个比方,以电商下单为例,下单的过程,需要提交订单,支付,同事需要核查仓库是否有库存,然后再把地址发给第三方物流下单,如果这些事情放一起做,需要30秒。用户需要等待30秒才能看见自己是否购买成功了,这样体验非常不好,即使你的平台一天只成交100单, 访问量很小,用户体验还是不好。这个时候你可以用分布式来解决这个问题,把支付,查库存,通知第三方物流等拆分成5个或者更多的工作。这样,用户体验大大提高,几秒就可以完成一次购物。

    如果你的访问量很大,每个流程步骤很复杂,那这个时候,你可以将步骤分布式,再多分配几个服务器集群,这个时候用微服务架构就更合适了。根据之前运营app的经验,日访问量几百万,每个交互都是2秒以内的应用,只要带宽足够,将web和数据库分离加上一个redis缓存,2台主流服务器就足够了。

    分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。

    分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。

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

    展开全文
  • 集群是个物理形态,分布式是个工作方式。 分布式:一个业务分拆多个子业务,部署在不同的服务器上 集群:同一个业务,部署在多个服务器上 1:分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器...
  • 微服务 微服务架构:将原来在一个应用中开发的多个模块进行拆分,单独开发和部署 保证可用性、性能 分布式强调系统的拆分,微服务也是强调系统的拆分,微服务架构属于分布式架构的范畴; 并且到目前为止,微服务并...
  • 一、分布式系统 在《分布式系统原理与范型》一书中有如下定义: “分布式系统是若干独立计算机的集合,这些计算机对于用户来说就像单个相关系统”; 分布式系统是由一组通过网络进行通信、为了完成共同的任务而...
  • 生产环境下的微服务肯定是分布式部署的,分布式部署的应用不一定是微服务架构的 (4)、在设计与开发中我们可以将分布式与集群的分开吗? 分布式的主要功能是将我们的系统模块化,将系统进行解耦,方便维护和开发;...
  • 分布式:服务的不同模块部署在不同的服务器上,单个节点不能提供完整的服务,需要多节点协调才能提供服务,也可以是相同组件部署在不同节点上,但节点通过交换信息协调提供服务。分布式强调的是工作方式。 微服务:...
  • 集群 分布式 微服务

    2020-12-23 13:47:21
    1.分布式:一个业务分拆多个子业务,部署在不同的服务器上2.集群:同一个业务,部署在多个服务器上分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在一起,实现同一业务。分布式中的每一个...
  • 浅析SOA、分布式微服务 一、SOA的特征及其实现 SOA的特征 SOA(面向服务的架构)是一种理念,其包含了以下一些特征: 面向服务的分布式计算 服务间松散耦合 支持服务的组装 服务注册和自动发现 以服务契约方式...
  • 分布式 将一个大的系统拆分为多个业务模块,将各个业务模块分别部署到不同的机器上,各个业务模块之间通过接口进行数据交互。 “拆”的方法:水平拆分、垂直拆分 1.水平拆分 根据“分层”的思想进行拆分。例如,可以...
  • 概念:集群是个物理形态,分布式是个工作方式。1.分布式:一个业务分拆多个子业务,部署在不同的服务器上2.集群:同一个业务,部署在多个服务器上分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器...
  • 单体 分布式 微服务

    2022-04-29 09:32:28
    单体 分布式 微服务 单体 在软件技术发展早期,软件设计者一般讲所有功能模块打包到一起并放在一个应用中运行,所用的模块使用同一数据库 优点: 架构简单,前期开发效率高,成本低,易部署,易测试,适合个人或者...
  • 微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势, 不过服务微服务化后带来的挑战也是...
  • 随着互联网的发展已经很难满足市场对技术的需求,于是我们从单独架构发展到分布式架构,又从分布式架构发展到 SOA 架构,服务不断的被拆分和分解,粒度也越来越小,直到微服务架构的诞生。 微服务架构是一种架构...
  • 1.分布式与集群 集群是个物理形态,分布式是个工作方式。  1. 分布式架构:多个子系统相互协作才能完成业务流程,系统之间需要进行通信。  2. 集群:同一个工程部署到多台服务器上。  3. 分布式架构优缺点:  ...
  • (一)分布式 传统的单体架构模式简单方便,但是在如今高并发的应用场景中,单体架构已不适用,而且单体架构也有明显的缺点 存在单点故障导致整体不可用 全部任务都在同一服务器(节点)处理,响应慢、压力大 ...
  • 架构设计相关0.什么是分布式系统,什么是微服务?集群:多机器做同一件事情;分布式系统:一件事情,多系统协同完成;微服务架构:构建分布式系统的一种架构方式,核心思路是:去中心化;......
  • 架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从分布式微服务(Leaderus著)架构解密从...
  • 集群是个物理形态,分布式微服务是个工作方式。 先说集群和分布式: · 分布式:一个业务分拆多个子业务,部署在不同的服务器上 · 集群:同一个业务,部署在多个服务器上,主要是为了做负载均衡 1:分布式是指将...
  • 简单的说,微服务是架构设计方式,分布式是系统部署方式,两者概念不同 微服务是啥? 这里不引用书本上的复杂概论了,简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务...
  • 一分钟弄懂什么是分布式微服务

    万次阅读 多人点赞 2018-10-18 21:33:31
    简单的说,微服务是架构设计方式,分布式是系统部署方式,两者概念不同 微服务是啥?这里不引用书本上的复杂概论了,简单来说微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以...
  • 集群是个物理形态,分布式是个工作方式。分布式:一个业务分拆多个子业务,部署在不同的服务器上集群:同一个业务,部署在多个服务器上1:分布式是指将不同的业务分布在不同的地方。而集群指的是将几台服务器集中在...
  • 一、微服务是什么? 维基上对其定义为:一种软件开发技术- 面向服务的体系结构(SOA)架构样式的一种变体,将应用程序构造为一组松散耦合的服务。在微服务体系结构中,服务是细粒度的,协议是轻量级的。 微服务(或...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 160,674
精华内容 64,269
关键字:

分布式 微服务

友情链接: den.rar