本文主要内容如下:

一、餐厅角色
在餐厅主要有这几种角色:
- 服务员 :负责记录客户已点哪些菜、上菜时间、上菜、划掉菜。 可以将多个服务员都当做客户端 ,相对于传菜员来说。
- 传菜员 :负责通知厨房走菜、划菜、传菜。 可以将传菜员当作 Keepalived 组件 。
- 厨师 :烹饪、装盘。 可以将厨师当作后台真实服务器 。
为什么需要传菜员这个角色?有了传菜员这个角色后,发生了什么呢?
- 服务员需要服务顾客,不需要离开包间去厨房拿菜。(单一职责)
- 服务员不需要定期到厨房询问菜是否好了。(解耦)
流程图如下:

① 客户点菜下单。
② 服务员记录菜名、上菜时间。这里的上菜时间是指客户要求的上菜时间,因为有些客户可能想等朋友一起来了再吃。
③ 服务员将一份订单交给传菜员,另外一份订单留在包间。
④ 传菜员大声通知多位厨师有哪些菜要做,什么时候开始上菜。
⑤ 厨师准备食材和烹饪。如果缺少食材,厨师还会告诉传菜员,由传菜员转告服务员说这道菜不能做。
⑥ 厨师做好后将菜装在盘子里,然后递给传菜员。</

本文通过餐厅角色的比喻,详细解释了Keepalived的三种路由方案:NAT、TUN和DR。NAT模式下,所有请求和响应都需经过LVS调度器,可能存在性能瓶颈;TUN模式采用IP隧道技术,真实服务器直接响应客户端,要求服务器具备对外连接能力;DR模式则要求调度器与服务器在同一局域网,直接修改数据包的MAC地址进行转发,提高了效率。文章推荐使用DR模式。
最低0.47元/天 解锁文章
1033

被折叠的 条评论
为什么被折叠?



