分布式、集群和微服务理解

1、分布式:一个业务分拆多个子业务,部署在不同的服务器上。 集群:同一个业务,部署在多个服务器上。 微服务就是微小紧凑的服务, 提供统一简捷的 API 供外部访问, 实现一组独立的功能。 

 

4、集群和分布式比较:集群是解决高可用的,而分布式是解决高性能、高并发和系统复用的。集群是个物理形态,分布式是个工作方式。例子:一个程序员是单机,多个程序员是集群,一个后台程序员加一个前端程序员是分布式。 

 

5、分布式和微服务比较:分布式和微服的架构很相似,只是部署的方式不一样而已。微服务与分布式的细微差别是,微服务的应用不一定是分散在多个服务器上,他也可以是同一个服务器。

 

6.集群(Cluster):所谓集群是指一组独立的计算机系统构成的一个松耦合的多处理器系统,它们之间通过网络实现进程间的通信。应用程序可以通过网络共享内存进行消息传送,实现分布式计算机。通俗一点来说,就是让若干台计算机联合起来工作(服务),可以是并行的,也可以是做备份。

 

7.负载均衡

HTTP重定向负载均衡
当用户发来请求的时候,Web服务器通过修改HTTP响应头中的Location标记来返回一个新的url,然后浏览器再继续请求这个新url,实际上就是页面重定向。

  • 优点:比较简单。
  • 缺点:浏览器需要两次请求服务器才能完成一次访问,性能较差。重定向服务自身的处理能力有可能成为瓶颈,整个集群的伸缩性国模有限;使用HTTP302响应码重定向,有可能使搜索引擎判断为SEO作弊,降低搜索排名。

 

DNS域名解析负载均衡
DNS(Domain NameSystem)负责域名解析的服务,域名url实际上是服务器的别名,实际映射是一个IP地址,解析过程,就是DNS完成域名到IP的映射。而一个域名是可以配置成对应多个IP的。因此,DNS也就可以作为负载均衡服务。
事实上,大型网站总是部分使用DNS域名解析,利用域名解析作为第一级负载均衡手段,即域名解析得到的一组服务器并不是实际提供Web服务的物理服务器,而是同样提供负载均衡服务的内部服务器,这组内部负载均衡服务器再进行负载均衡,将请求分发到真是的Web服务器上。

  • 优点:将负载均衡的工作转交给DNS,省掉了网站管理维护负载均衡服务器的麻烦,同时许多DNS还支持基于地理位置的域名解析,即会将域名解析成举例用户地理最近的一个服务器地址,这样可以加快用户访问速度,改善性能。
  • 缺点:不能自由定义规则,而且变更被映射的IP或者机器故障时很麻烦,还存在DNS生效延迟的问题。而且DNS负载均衡的控制权在域名服务商那里,网站无法对其做更多改善和更强大的管理。

 

反向代理负载均衡
反向代理服务可以缓存资源以改善网站性能。实际上,在部署位置上,反向代理服务器处于Web服务器前面(这样才可能缓存Web相应,加速访问),这个位置也正好是负载均衡服务器的位置,所以大多数反向代理服务器同时提供负载均衡的功能,管理一组Web服务器,将请求根据负载均衡算法转发到不同的Web服务器上。Web服务器处理完成的响应也需要通过反向代理服务器返回给用户。由于web服务器不直接对外提供访问,因此Web服务器不需要使用外部ip地址,而反向代理服务器则需要配置双网卡和内部外部两套IP地址。

  • 优点:和反向代理服务器功能集成在一起,部署简单。
  • 缺点:反向代理服务器是所有请求和响应的中转站,其性能可能会成为瓶颈。

 

负载均衡策略

  • 轮询
  • 加权轮询
  • 最少连接数
  • 最快响应
  • Hash法

 

物美智能-快速搭建自己的智能家居

posted @ 2018-07-18 16:54  kerwin cui  阅读(3684)  评论(0编辑  收藏  举报