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

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


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




  • 数据在kafka里面是不会丢的,下次启动可以继续写入
相关推荐
集智飞行8 小时前
c++函数传参的几种推荐方式
开发语言·c++
serendipity_hky8 小时前
【SpringCloud | 第5篇】Seata分布式事务
分布式·后端·spring·spring cloud·seata·openfeign
鼾声鼾语8 小时前
matlab的ros2发布的消息,局域网内其他设备收不到情况吗?但是matlab可以订阅其他局域网的ros2发布的消息(问题总结)
开发语言·人工智能·深度学习·算法·matlab·isaaclab
五阿哥永琪8 小时前
Spring Boot 中自定义线程池的正确使用姿势:定义、注入与最佳实践
spring boot·后端·python
麦麦鸡腿堡9 小时前
Java_类的加载
java·开发语言
我命由我123459 小时前
VSCode - Prettier 配置格式化的单行长度
开发语言·前端·ide·vscode·前端框架·编辑器·学习方法
Victor3569 小时前
Netty(16)Netty的零拷贝机制是什么?它如何提高性能?
后端
JIngJaneIL9 小时前
基于java + vue校园快递物流管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js
Victor3569 小时前
Netty(15)Netty的线程模型是什么?它有哪些线程池类型?
后端
超级大只老咪9 小时前
数组的正向存储VS反向存储(Java)
java·开发语言·python