秒杀系统的第一个设计原则就是隔离热点数据,即禁止1%的请求影响剩余99%的请求。隔离之后也可以更方便地针对1%的请求做有针对性的优化。在实践中,我们对秒杀系统做了多层次的隔离。
●业务隔离。把秒杀做成-一种营销活动,卖家要参加秒杀活动需要单独报名。从技术上来说,通过卖家报名,我们就可以把他们设置为已知热点,提前做好预热。
●系统隔离。系统隔离更多是指运行时的隔离,即通过分组部署的方式把1%的请求与剩下99%的请求分开。我们针对秒杀活动还申请了单独的域名,目的也是让不同的请求落人不同的集群中。
●数据隔离。秒杀所调用的数据大部分都是热的数据,比如会启用单独Cache集群或者MySQL数据库来释放热点数据,目的是避免0.01%的数据影响其余99.99%的数据。
当然,实现隔离有很多办法。
●按照用户来区分,可以给不同的用户分配不同的Cookie,在接人层再路由到不同的服务接口中,还可以在接人层针对URL的不同路径设置限流策略等;在服务层调用不同的服务接口;
●在数据层可以通过给数据打上特殊的标签来区分。
以上网站建设操作的目的都是把已经设定的热点和普通的请求区分开来。
>>> 查看《网站热点隔离》更多相关资讯 <<<
本文地址:http://www.phpweb.com.cn/news/html/4475.html