zoukankan      html  css  js  c++  java
  • 聊一聊集群、分布式,面向服务(SOA)、微服务

    集群与分布式的区别

      什么是集群

      集群就是单机的多实例,在多个服务器上部署多个服务,每个服务就是一个节点,部署N个节点,处理业务的能力就提升 N倍(大约),这些节点的集合就叫做集群。在服务器集群中,需要至少一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据调度策略将请求分给集群服务器去处理。集群一般分为三种:负载均衡LB(Load Banlancing)、高可用性HA(High Availability)、高性能HP(High Performace),之后再写自己的见解。

      什么是分布式

      分布式就是将一个业务分拆成多个子业务,在多个服务器上部署不同的子业务,每个子业务都是能够独立运行的,可具体强化指定子业务的业务处理能力(给这个子业务搭建服务集群)。微服务(SOA) 面向服务 都是典型的分布式架构。另外分布式架构与分布式部署是有区别的,分布式架构设计的软件不一定要去分布式部署,我也可以部署在一台服务器上。

      下面上一张知乎大神“大闲人柴毛毛”画的神图:  

      

      补充说明个人见解:分布式应该是各子业务的前端与后端配合工作,各个子业务后端攻城狮开发放本子业务相关接口。

    面向服务与微服务的区别

      面向服务SOA

      SOA(Service Oriented Architecture的出现其实是为了解决历史问题:企业在信息化的过程中会有各种各样互相隔离的系统,需要有一种机制将他们整合起来。SOA初期的服务是很大的概念,通常指定的一个可以独立运作的系统,系统的分割粒度比较大,将一个子系统服务化。各个服务之间通过企业服务总线(ESB)相互通讯。

      特点:大块业务逻辑,着重中央管理,确保应用能够交互操作。

      微服务

      微服务是在 SOA 上做的升华,微服务架构强调的一个重点是“业务需要彻底的组件化和服务化”,原有的单个业务系统会拆分为多个可以独立开发、设计、运行的小应用。这些小应用之间通过服务完成交互和集成。

      特点单独任务或小块业务逻辑,着重分散管理,能快速执行新功能、拓展开发团队。

      下面是根据个人见解画了一张图:

      

      完。

  • 相关阅读:
    String 尺取法
    dos 命令
    又见01背包
    01串
    Python-Matplotlib 10 面向对象 VS Matlab Style
    [ 转 ] Fiddler 教程
    Android 查看设备文件
    Python-Matplotlib 9 颜色和样式 [r]
    Python-Matplotlib 8 箱形图
    Python-Matplotlib 7 饼状图
  • 原文地址:https://www.cnblogs.com/i_am_me/p/13305345.html
Copyright © 2011-2022 走看看