轻重分离的主旨是对服务的内容进行细分,按照高内聚低耦合的方式部署服务,使得局部的过载不扩散到整个系统。
很多突发事件不可预测,需要在突发流量不可控的前提下实现系统影响面的可控,故我们在系统设计时即要开始考虑轻重分离的策略,尽量使过载时产生的影响局限在局部,最理想的情况是能实现物理上的隔离(服务器、IDC、带宽等等)。举个例子:网站系统按照业务重要性做部署分离,考虑把常规的资讯服务同娱乐频道服务服务隔离部署,因为娱乐频道的突发事件可能带来异常的流量,隔离后这些流量即便造成娱乐频道服务过载也不会冲击其他正常的网站资讯业务。如果采取这种模型部署,许多突发娱乐新闻,就不会造成资讯全面中断服务那么大的负面影响了。
轻重分离是一种方法论,通过这个思路我们再拓展出其他一些常规的分离方法:
1、渠道分离:如优先、无线服务的分离;
2、部署分离:如电信、联通、教育、海外服务的分离
3、快慢分离:如文字、图片、视频、下载等服务的分离
4、用户分离:按set划分系统为用户提供服务,常用的方式是按照游戏世界(区)、按UIN号段、按UIN取模等方式做到服务的逻辑直至物理的隔离;
5、数据库部署分离
6、接入层与逻辑层分离
7、数据库读写分离
8、动静分离