Golang|Kafka在秒杀场景中的应用

  • 我们的程序在面对 kill -9 这样的指令的时候会直接退出,不能保证数据持久化到mysql完后再退出
  • 而且我们现在的并发量仍然不够,只能加机器,多机器并发写mysql可能导致mysql扛不住,mysql写的并发量不能根据我们机器的数量的增长而增长
  • 考虑使用消息队列mq,当抽中奖品后把订单消息写入kafka中去,然后又其他服务器起kafka消费者去读取订单信息写入kafka


  • 对应的,需要修改我们的抽奖函数




  • 数据在kafka里面是不会丢的,下次启动可以继续写入
相关推荐
中文很快乐5 分钟前
java开发--开发工具全面介绍--新手养成记
java·开发语言·java开发·开发工具介绍·idea开发工具
IMPYLH8 分钟前
Lua 的 Coroutine(协程)模块
开发语言·笔记·后端·中间件·游戏引擎·lua
看见繁华8 分钟前
C++ 高级
开发语言·c++
点云SLAM16 分钟前
constexpr 和 explicit 在 C++ 中被提出的动机
开发语言·c++·explicit关键字·隐式转换·constexpr关键字·c++11/17/20
我命由我1234517 分钟前
python-dotenv - python-dotenv 快速上手
服务器·开发语言·数据库·后端·python·学习·学习方法
黑客思维者17 分钟前
Python定时任务schedule/APScheduler/Crontab 原理与落地实践
开发语言·python·crontab·apscheduler
yaoxin52112322 分钟前
268. Java Stream API 入门指南
java·开发语言·python
ZePingPingZe24 分钟前
浅谈接口幂等性、MQ消费幂等性
分布式·java-rocketmq
ss27326 分钟前
ConcurrentLinkedQueue实战:电商秒杀系统的队列选型优化
java·开发语言·安全
繁星蓝雨30 分钟前
Qt优雅的组织项目结构三(使用CMakeLists进行模块化配置)——————附带详细示例代码
开发语言·数据库·qt