采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
redis做分布式队列然后用自旋的方式做是一种方案,但是自选的周期设置是个头疼的问题,太短影响cpu,太长了又怕耽误业务,这里推荐给大家一个比较好的方式,自己实现一个中间件队列,其内部的原理就像线程池的队列一样,然后通过类似dubbo rpc请求的方式将请求发给队列,再由队列二段式的发给服务提供方,这样服务提供方和消费方都像是再处理一个rpc请求一样,具体的平滑过程给中间件队列消化掉了,这个中间件队列本身无状态,可以水平扩展
大概的意思,是服务提供方发送rpc请求到远程队列,队列将rpc请求入队,出队的时候再将rpc请求返回,然后再执行业务逻辑?
出队的时候调用真正的rpc远程提供方,收到消息后返回给rpc服务调用方
那也就是说controller层的createOrder方法要拆分成两个服务,具体的减库存逻辑就是服务提供方了。服务的调用方和提供方是同一个线程? 还有“这个中间件本身无状态,可以水平拓展”是什么意思呢?
登录后可查看更多问答,登录/注册
理解高流量电商网站性能构建思路 用高逼格技术解决性能提升问题
1.8k 11
1.3k 10
1.7k 9
1.2k 9
1.1k 8