集群、负载均衡、微服务、分布式的概念

 

集群    多台主机干同样的事

比如web容器,只使用一个主机:

  • 这个主机发生故障,直接gg。
  • 数据库并发量大时,这个主机负担很大

 

数据库集群:使用多个主机,这些主机上都运行web容器。

  • 某些主机发生故障,其它主机还能工作,影响不大
  • 更好应对并发

 

常见的集群:

  • web服务器集群,比如tomcat集群
  • 数据库集群(读写分离)
  • 缓存集群,比如redis集群
  • 搜索引擎集群

 

 


 

 

 

负载均衡(Load Balancer)

集群之后,一大片主机都干同样的事儿,具体交给哪台机器处理呢?这就需要单独使用一台机器来完成负载均衡。

请求发送给负载均衡的服务器,由负载均衡服务器决定发给集群中的哪个机器来处理。

集群、负载均衡、微服务、分布式的概念_第1张图片

 

 


 

 

 

微服务   将一个大项目拆分为多个子模块

集群、负载均衡、微服务、分布式的概念_第2张图片

传统的项目是单体应用,如果项目很大,升级维护会很麻烦,修改某一模块,需要重新部署整个项目。

微服务是把子模块抽取出来,变成一个个微服务,可单独修改、部署,在项目主体中调用这些微服务即可。微服务之间通过消息队列来通信。

 

 


 

 

 

分布式

将一个大的项目、应用划分为多个子模块,单独部署到多个主机上。

比如将web容器单独安装到一台主机上,把redis单独安装到一个主机上,把数据库单独安装到一个主机上,协同完成一个项目。

 

分布式是一个很笼统的概念,集群、微服务也算是分布式的。

 

 


 

 

分布式储存

有时需要将数据以文件形式储存到硬盘,比如session钝化、对象序列化、上传文件的储存、大数据储存等。

我们专门用一堆主机来储存文件,并进行储存储优化、备份,将这些文件映射到一个虚拟的文件系统中,实现分布式存储。

 

你可能感兴趣的:(集群、负载均衡、微服务、分布式的概念)