秒杀——接口优化

1.Redis预减库存减少数据库访问

2.内存标记减少Redis访问

3.请求先入队缓冲,异步下单,增强用户体验

4. Nginx水平扩展

5.数据库分库分表(阿里中间件mycat)

 

减少数据库访问:

  1.系统初始化时,把商品库存数量加载到redis

  2.收到请求,redis预减库存,库存不足,直接返回,否则继续

  3.请求入队(消息队列),立即返回 "排队中"

  4.请求出队,生成订单,减少库存

  5.客户端轮询,是否秒杀成功

 

安装RabbitMQ

  1.安装erlang环境

  2.安装RabbitMQ

rabbitmq-plugins enable rabbitmq_management  
rabbitmq-plugins enable rabbitmq_management
http://localhost:15672进行验证,你会看到下面界面,输入用户名:guest,密码:guest

Rabbit的4中交换机模式

  1.direct模式 交换机exchange

  2.topic模式 交换机exchange

  3.fanout模式 交换机exchange

  4.header模式 交换机exchange

 

posted @ 2018-07-09 13:09  SkyeAngel  阅读(332)  评论(0编辑  收藏  举报