【基础篇-消息队列】——网关如何接收服务端的秒杀结果

目录

    • 一、 网关如何接收服务端的秒杀结果

本文来源:极客时间vip课程笔记

一、 网关如何接收服务端的秒杀结果

  • 在《【基础篇-消息队列】——为什么需要消息队列》这节课里面,我们举了一个秒杀的例子,这个例子是用来说明消息队列是如何来实现异步处理的。课后很多同学留言提问,网关在发送消息之后,是如何来接收后端服务的秒杀结果,又如何来给 APP 返回响应的呢?

  • 在解答这个问题之前,我需要先说一下,实际生产环境中的秒杀系统,远比我们举的这个例子复杂得多,实现方案也是多种多样的,不是说一定要按照我们这个例子的方式来实现。

  • 在这个例子中,网关接收后端服务秒杀结果,实现的方式也不只一种,这里我给大家提供一个比较简单的方案。

  • 比如说,用 Java 语言来举例子:

    public class RequestHandler {
         
      
      // ID生成器
      @Inject
      private IdGenerator idGenerator;
      // 消息队列生产者
      @Inject
      private Producer producer;
      // 保存秒杀结果的Map
      @Inject
      private Map<Long, Result> results;
    
      // 保存mutex的Map
      private Map<Long, Object> mutexes 

你可能感兴趣的:(消息队列,消息队列)