1、什么是分布式系统?
一个系统,分为很多模块,在不同的机器上部署不同的功能,组合起来工作。
2、为什么需要分布式系统?
(1)解决系统性能问题
随着用户访问量不断增加,单节点web服务器处理能力无法满足日益增长的计算;单节点的数据库也不能及时响应读写任务,硬件的提升(加内存,加磁盘,使用更好的CPU)成本昂贵单效果提升不明显;应用程序也不能进一步优化
(2)解决单点故障,保证可用性
单节点机器故障(如web服务器或者是数据库挂了),整个系统都不可用,这肯定是不行的。
3、分布式和微服务的区别在哪里?
(1)微服务就是很小的服务,小到一个服务只对应一个单一的功能,只做一件事。这个服务可以单独部署运行,服务之间可以通过rpc来相互交互,每个微服务都是由独立的小团队开发,测试,部署,上线,负责它的整个生命周期
(2)分布式?分布式服务顾名思义服务是分散部署在不同的机器上的,一个服务可能负责几个功能,是一种SOA架构的,服务之间也是通过rpc来交互或者时webService来交互的
微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势。
微服务重在解耦合,使每个模块都独立,分布式重在资源共享与加快计算机计算速度