热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

rabbitmq这种场景能用么?

现在公司要对公司的50多万个手机用户的订单做两个操作1、查出每个用户的所有贷款订单,然后做一些比较复杂的筛选,得到筛选结果2、对筛选出来的所有订单,挨个发送和订单相关的文案短信给

现在公司要对公司的50多万个手机用户的订单做两个操作
1、查出每个用户的所有贷款订单,然后做一些比较复杂的筛选,得到筛选结果
2、对筛选出来的所有订单,挨个发送和订单相关的文案短信给用户

我目前的做法是:
1、我直接查出所有用户的订单 然后循环查询出每个人的所有订单并筛选符合发送短信要求的订单出来 这样循环查库肯定不太现实,所以我想着要不直接先从库中直接获取50多万个用户的id 然后循环扔进队列服务里 然后启动消费者,消费者这边每次拿一个id,然后查出符合要求的订单并准备好文案
2、然后把这些符合要求的订单号和文案再循环扔到另外一个队列中,这个队列对应的消费者在每次接收到一条消息后就调用短信接口

以上做法相当于只有初次查询出了所有id 以后的流程都是队列和消费者一条数据一条数据的处理各个阶段的流程

问题是
第一步我把50万个id循环扔进队列然后由消费者一个个的去查库然后处理最终找到符合要求的订单 这个过程都是在一个系统中的 而且消费者处理也会很快 所以我感觉有点像直接使用循环去遍历50万个id 然后在每个循环中去查库再做很多操作的 这样循环查询貌似太低效了吧
还是说队列在这里能起到缓冲作用?????感觉消费者处理也很快的

第二步我用队列是因为要调用短信服务 一下子发很多数据给短信接口可能压力大 所以才用队列一条条放过去的 并且发送失败了还可以重试

但第一步我着实不知道那里用队列和直接使用循环有差别么??

往朋友们提点意见


推荐阅读
  • 利用RabbitMQ实现高效延迟任务处理
    本文详细探讨了如何利用RabbitMQ实现延迟任务,包括其应用场景、实现原理、系统设计以及具体的Spring Boot实现方式。 ... [详细]
  • 本文提供了一套实用的方法论,旨在帮助开发者构建能够应对高并发请求且易于扩展的Web服务。内容涵盖了服务器架构、数据库管理、缓存策略以及异步处理等多个方面。 ... [详细]
  • 一、搭建项目创建Maven项目导入rabbitmq包com.rabbitmqamqp-clien ... [详细]
  • 利用GitHub热门资源,成功斩获阿里、京东、腾讯三巨头Offer
    Spring框架作为Java生态系统中的重要组成部分,因其强大的功能和灵活的扩展性,被广泛应用于各种规模的企业级应用开发中。本文将通过一份在GitHub上获得极高评价的Spring全家桶文档,探讨如何掌握Spring框架及其相关技术,助力职业发展。 ... [详细]
  • 历经两个月,他成功斩获阿里巴巴Offer
    经过两个月的努力,一位普通的双非本科毕业生最终成功获得了阿里巴巴的录用通知。 ... [详细]
  • 本文介绍了如何在三台CentOS 7.5虚拟机上通过Docker部署RabbitMQ集群,包括环境准备、容器创建、集群配置及故障处理等内容。 ... [详细]
  • RabbitMQ消息分发策略与确认机制
    本文详细介绍了RabbitMQ的消息分发轮询机制以及消息确认(Message Acknowledgment)功能,通过实例演示了如何确保消息可靠传递。 ... [详细]
  • RabbitMQ 核心组件解析
    本文详细介绍了RabbitMQ的核心概念,包括其基本原理、应用场景及关键组件,如消息、生产者、消费者、信道、交换机、路由键和虚拟主机等。 ... [详细]
  • Spring Boot + RabbitMQ 消息确认机制详解
    本文详细介绍如何在 Spring Boot 项目中使用 RabbitMQ 的消息确认机制,包括消息发送确认和消息接收确认,帮助开发者解决在实际操作中可能遇到的问题。 ... [详细]
  • 深入解析TCP/IP五层协议
    本文详细介绍了TCP/IP五层协议模型,包括物理层、数据链路层、网络层、传输层和应用层。每层的功能及其相互关系将被逐一解释,帮助读者理解互联网通信的原理。此外,还特别讨论了UDP和TCP协议的特点以及三次握手、四次挥手的过程。 ... [详细]
  • FinOps 与 Serverless 的结合:破解云成本难题
    本文探讨了如何通过 FinOps 实践优化 Serverless 应用的成本管理,提出了首个 Serverless 函数总成本估计模型,并分享了多种有效的成本优化策略。 ... [详细]
  • 本文详细探讨了HTML表单中GET和POST请求的区别,包括它们的工作原理、数据传输方式、安全性及适用场景。同时,通过实例展示了如何在Servlet中处理这两种请求。 ... [详细]
  • 深入解析Redis内存对象模型
    本文详细介绍了Redis内存对象模型的关键知识点,包括内存统计、内存分配、数据存储细节及优化策略。通过实际案例和专业分析,帮助读者全面理解Redis内存管理机制。 ... [详细]
  • 探讨如何通过高效的数据库查询和排序策略,优化基于GPS位置信息的附近用户搜索功能,以应对大规模用户数据场景。 ... [详细]
  • 本文探讨了哪些数据库支持队列式的写入操作(即一个键对应一个队列,数据可以连续入队),并且具备良好的持久化特性。这类需求通常出现在需要高效处理和存储大量有序数据的场景中。 ... [详细]
author-avatar
手机用户2502932551
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有