ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
[TOC] ## 消息队列 - 场景说明 用户注册后,需要发注册邮件和注册短信 - 串行方式 将注册信息写入数据库成功后,发送注册邮件,再发送注册短信 - 并行方式 将注册信息写入数据库成功后,发送注册郎件的同时发送注册短信 - 消息队列方式 将注册信息写入数据库成功后,将成功信息写入队列,此时直接返回成功给用户,写入队列的时间非常短,可以忽略不计,然后异步发送邮件和短信 ## 应用解耦 - 场景说明 用户下单后,订单系统需要通知库存系统。 假如库存系统无法访问,则订单减库存将失败,从而导致订单失败订单系统与库存系统耦合 - 引用队列 用户下单后,订单系统完成持久化处理,将消息写入消息队列,返回用户订单下单成功,订阅下单的消息,采用拉/推的方式,获取下单信息,库存系统根据下单信息,进行库存操作 ## 流量削锋 - 应用场景 秒杀活动,流量瞬时激增,服务器压力大。 用户发起请求,服务器接收后,先写入消息队列。假如消息队列长度超过最大值,则直接报错或提示用户 后续程序读取消息队列再做处理 控制请求量 缓解高流量 ## 日志处理 - 应用场景 解决大量日志的传输,日志采集程序将程序写入消息队列,然后通过日志处理程序的订阅消费日志 ## 消息通讯 - 应用场景 聊天室 多个客户端订阅同一主题,进行消息发布和接收 ## 常见消息队列产品 Kafka、 Activemq、 Zeros、 Rabbitmq、 Redis等 ## 接口的并发请求 `curl_multi_init` php 端可同时调用多个接口