11分布式系统环境下各自有什么优缺点?
问题分析:优点是显而易见的,面试官主要是想看看意识到有哪些缺点和问题,不过好的方面还是要简单带过。答:优点很多,使用分布式就是为了解决传统架构各种问题,多人在一个下开发维护难,也不好控制容错能力。拆分成微服务问题就好办多了。主要从4个方面简单说下:1.系统可用性提升一个系统全年可用时间在99.999%,5个9的服务可用率在设计合理的分布式系统中并不是一个触不可及的数字。传统的集中式计算或集中式存储在遇见单点故障时很容易造成整个服务不可用,分布式下的服务体系,单台机器有故障,不致于造成整个服务不可用。2.系统并发能力提升请求通过Nginx负载均衡被分发到不同的服务器上,运行同样代码的服务器可以有1台或N台,通常情况下会根据实际用户访问量随时增加机器,无论是数据库或者服务,都可以做到随时水平扩展。比如双11活动,平时订单少50台机器就够了,到了11订单量剧增,服务器增加到100台,每台机器之间相互独立,互不影响。3.系统容错能力提升同一组服务分别部署在北京上海杭州,杭州的机房突发断电或者火灾,杭州机房的流量会被自动分发到北京和上海的机房,不影响用户使用。4.低延迟参考上一个图,北京的用户请求自动分发到北京,上海的用户请求被分发到上海,服务器会根据用户的IP选择距离自己最近的机房,降低网络延迟。
来自:并发和同步-分布式并发