类似12306多人同时抢座位的功能 我的思路是先post排队再单进程events逐个处理 但不知道怎么实现这个过程 gateway怎么改成阻塞模式 如果不是阻塞模式events是不是存在并发问题?
阻塞解决不了并发问题吧,阻塞只会让并发下降。解决并发需要用锁机制或者原子操作来解决,比如数据放到redis队列,然后pop出来就不会有并发问题。
以前是用悲欢锁,还是出现少量重复记录,我怀疑是锁表锁不住毫秒级的并发导致的,也不敢确定。现在做了redis pop和全部在events里处理两个方案,因为我也不完全确定能解决毫秒级并发。
可能你之前用的锁的方法有问题吧
可以使用RabbitMQ来实现。
阻塞解决不了并发问题吧,阻塞只会让并发下降。解决并发需要用锁机制或者原子操作来解决,比如数据放到redis队列,然后pop出来就不会有并发问题。
以前是用悲欢锁,还是出现少量重复记录,我怀疑是锁表锁不住毫秒级的并发导致的,也不敢确定。现在做了redis pop和全部在events里处理两个方案,因为我也不完全确定能解决毫秒级并发。
可能你之前用的锁的方法有问题吧
可以使用RabbitMQ来实现。