这个系统的主要目的在于秒杀,所有其他地方都做的很简单。功能不多!
web框架:gin
消息队列:RabbitMQ
分布式方案:hash环
orm: gorm
限流器:tollbooth
登录验证:jwt
cd /cmd
go run main.go //启动后台管理接口
go run client.go //启动RabbitMQ写入数据库客户端
go run spike.go //启动秒杀系统,支持横行扩展
设置:
测试结果:
RabbitMQ:
mysql: 并没有超卖,测试添加了1000个库存