什么是微服务?什么是分布式?

 

什么是微服务?

        简单的说,微服务是系统架构上的一种设计风格,旨在将一个原本独立的系统拆分成多个小型服务,每个小服务各自独立的进程中运行,相互之间不影响,服务之间通过基于HTTP的RESTful API进行通信协作。

       每一个小型服务都是围绕着某一项业务功能进行构建,并且同时维护着自身的数据存储、业务开发、测试机制以及部署机制。

      优点:1.每一个服务相对较为简单,精悍。

                 2.独立部署与扩展,服务的更新不会影响其他服务的运行。

       缺点:1.运维成本加大。

                  2.接口的一致性。

                 3.复杂性。(网络延迟、事务、异步消息...)

 

什么是分布式?

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

首先需要明确的是,只有当单个节点的处理能力无法满足日益增长的计算、存储任务的时候,且硬件的提升(加内存、加磁盘、使用更好的CPU)高昂到得不偿失的时候,应用程序也不能进一步优化的时候,我们才需要考虑分布式系统。

 

关系:

1.微服务将整个产品进行横向切割,按业务或耦合度较高的工作线进行划分;

2.分布式也属于微服务,部署的方式不一样,微服务不一定需要部署在不同的机器上,也可能在单个机器。

3.延伸出来集群,解决单个系统的请求压力。

你可能感兴趣的:(微服务)