大白话解释什么是集群(举生活中最通俗易懂的案例)

大白话解释什么是集群(举生活中最通俗易懂的案例)

举列场景:招商银行办理业务

       2019年04月29号,招商银行门口来了30个人办理业务

       此时,招商银行的柜台只有一个窗口,一个银行职员,然后该窗口里的银行职员就开始给这30个客户办理业务,2个小时过去了,该窗口的银行职员只给5个客户办完了业务,还有25个客户还在排队焦急的等待着。

      一个窗口就是单机/单个服务器

     此时,该窗口的银行职员突然拉肚子,不舒服,所以,该职员不得不跑去厕所,此时该职员在窗口前放了一块牌子,牌子上赫然写着暂停服务(单机服务器宕机/死机崩溃了)

     此时,招商银行的领导见到此状况,开始采取措施,紧急抽调了9个银行职员,又开了9个新的窗口,这9个窗口开始处理剩下的25个客户

以上案例就是集群

      原来是只有一个窗口办理业务,那么一个窗口就要处理很多的客户,所以一个窗口的压力会很大,而且一个窗口要处理这么多客户,要处理到猴年马月啊,效率不高,而且万一该窗口遇到突然情况,停止服务了,那剩下的客户就没办法办理业务了

      后面又增加了9个窗口,就相当于原来只有一个窗口办理业务,现在变成了10个窗口办理业务,原来一个窗口的压力,现在分摊给了10个窗口,而且让客户等待的时间大大缩短了,你想呀,原来只有一个窗口的时候,30个人要在同一个窗口前排队等待,而现在有10个窗口了,那这30个客户可以分别去不同的窗口前排队,每个窗口平均排队3个人,你想想,原来只有一个窗口的情况下,我们假设一个客户办理业务需要10分钟,那么30个客户,那就需要300分钟,如果我们调整为10个窗口的话(这10个窗口同时工作),那么每个窗口平均排队3个人,那么30分钟就可以把这30个客户全部处理完,原来需要300分钟,现在只需要30分钟了,办事效率是不是提高了9倍。

     来银行办理业务的30个客户就相当于30个请求,原来一台服务器要处理30个请求,现在有了10台服务器了,可以把这30个请求分摊到这10台服务器上,那么单台服务器的压力就减小了很多,而且效率也提高了

     再举个生活中常见的例子,比如:某大型超市,过年过节的时候,超市里人满为患,尤其是收银处,更是比肩继踵,挤满了人,如果超市只有一个收银处,那可想而知,付钱买单都要排队排成长龙,如果超市采取措施,多设置几个收银处,那不但可以减轻单个收银处的压力,还可以提高效率,减少了顾客买单时的等待时间,一举两得,何乐而不为呢!

    大家想一想,如果该超市只设置了一个收银处,如果该收银处停止服务了,那也就意味着顾客无法付钱买单了,只有等该收银处重新启动服务,顾客才能付钱买单。所以,超市最好的做法就是,多设置几个收银处,不但可以减小单个收银处的压力,还可以防止因为单个收银处突然意外停止了服务而带来的风险和损失。

    好,我们说回银行的例子,银行原来只有一个窗口时,如果该窗口突然遇到了什么意外,突然暂停服务了,那就没办法处理后面的客户了,而此时如果我们增加了9个窗口的话,如果其中一个窗口或者其中几个窗口突然遇到了意外,停止了服务,没关系啊,剩下的窗口仍然可以继续服务,不会影响到后面的客户办理业务,只不过此时,那些剩下的窗口的工作量会增加一些而已。

        案例中,单个窗口就表示单机/单台服务器,多个窗口就表示多个服务器,多个窗口做相同的事情就意味着多个窗口构成了集群,就像上面银行的例子一样,10个窗口都是做一样的事情(这10个窗口都是给客户办理业务的),就算其中一个窗口停止服务了,那不是还剩下9个窗口可以继续服务嘛。(大大提高了容错性、可用性)

所以集群的好处就是

1.分担/分摊压力

2.如果某台服务器崩溃了,没事儿,其他的服务器还在继续服务,怕啥!(反正每台服务器都是做一样的事情,其中一台或几台服务器崩溃了,剩下没崩溃的服务器还可以继续服务),提高容错性、可用性

     再举一个生活中的通俗案例:就像一个企业中有2个财务人员,这2个财务人员的工作内容都是一样的,工作内容都是负责报销,有一天,其中一个财务人员辞职了,那怕啥啊,剩下的那个财务人员还可以继续处理报销的事情,只不过此时,他的工作量增加了一倍而已,原来2个人的活,现在变成他一个人来干了。

    大家想一想,如果该企业中只有一个财务人员来负责报销的事情,如果该财务人员离职了,那报销的事情就没有人来处理了。

    一个财务人员就是单台服务器,多个财务人员就是多台服务器,如果这几个财务人员的工作内容都是一样的,那就构成了集群,集群就是多个人在一起做同样的事

       假如我们有一套医疗管理系统的web应用程序,我们把该web应用程序部署到Tomcat中,假如每天有1万人使用我们的web应用,假如该Tomcat每天要处理1万个请求,那么该Tomcat压力会很大,此时如果我们再开9个Tomcat,然后把这套医疗管理系统的web应用程序在9个Tomcat中都部署一份,那么此时就有10个Tomcat在同时运行了,我们可以把每天的1万个请求分摊给10个Tomcat去处理(减轻单台服务器/单个Tomcat的压力),这就是集群,这就是集群带来的好处。

    还有就是,如果其中一个Tomcat或者其中几个Tomcat崩溃了,那剩下的那些还没有崩溃的Tomcat还可以继续处理请求,继续服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值