多活并行的意思是几条线同时在跑,一条出了问题直接从池子里摘掉,剩下的照常。皇室战争的号群要用这套做法,第一件事是把号群分成几组,每组对着几条线。分组的方式直接决定了后面摘线的时候,影响面有多大。
- 组
- 几套环境放在一起,共用同一批线
- 线池
- 一个组里可用的若干条线,同时承担流量
- 摘除
- 某条线出问题时把它从池子里移出,其余照常
分组按什么划
按环境的用途划,不按机器位置划。同一个用途的环境放在一组,组的线池按这一组的负载配。按机器位置划的坏处是,一台机器上如果同时跑着不同用途的号群,摘一条线会影响到不相关的部分。分组数量不用多,三到五组覆盖多数号群,组太细会让每条线的负载不好算。代理IP的线池按组配,组与组之间的线不要互相调用。
组太多会怎样
组划得越细,每条线要背的负载越难算,体检和权重调整的工作量也按组数上涨。三到五组之外再往下分,多出来的那部分收益通常很有限,维护上的麻烦倒是实实在在。真要细分,优先看用途差别大的部分,用途接近的环境没有必要塞到两组里。
每组配几条线
一个组里的线数要比同时要用的数量多一条以上,多出来的那条是给摘除留的余量。三条线跑两组号群、再加一条做缓冲,这样的配置比较稳。只按刚好够用来配的组,摘掉一条之后剩下的线要顶全部负载,等于把问题从一个地方挪到另一个地方。代理IP的余量配在组内,比配在个别线上更管用。
组和线要不要一一对应
不需要。多活并行的特点就是一组环境对着多条线,一一对应就退化成了一组一线,那是固定绑定的做法,摘线的空间很小。一组对着几条线,摘掉一条还有别的顶着,这才是多活的意义。
分组之后怎么记录
一张表,写清楚每组包含哪些环境、这一组的线池有哪几条、谁在维护。代理IP的线池发生变化的时候,改这张表就行。表不用实时更新,但每次调整之后要补一次。
- 按用途分组:同一用途的环境放一组
- 线池留余量:比同时要用的数量多一条
- 一张表记清楚:环境、线池、维护人
分组的粗细,决定摘线的影响面。
皇室战争的号群如果用途比较单一,两三组就够了,代理IP的线池也很好配。
