分流与排队

访问量变大时,一台服务器处理不过来,就得增加服务器进行分流。就像银行高峰时增加柜台,满足为更多客户服务一样。

web服务器负载均衡、数据库服务器主从、分布式文件服务器、分布式缓存服务器、分布式搜索服务器等,都算是在进行分流。

为了保持客户端会话信息,可使用黏滞会话、会话共享等。

 

有些功能要进行排队处理。比如商品库存,有多个用户抢同一个商品时,必须控制每次有用户抢到商品,库存都会减少。

不管有没有分流,需要排队的还是要排队,分流时处理起来可能会更麻烦。

排队处理也可能有不同策略,如根据不同区域,限制不同数量。

mysql有悲观锁、乐观锁,redis也可以实现锁。我只用过redis实现悲观锁,其他没时间弄。