开发者社区> 问答> 正文

在至少有一个请求执行成功后不再阻塞的这种场景下应用反应式

我必须要在第一个请求或者至少有一个请求执行成功后不再阻塞,这种情况下大家如何处理这个webflux。应用场景:应对缓存雪崩和瞬时大量缓存击穿,现在的阻塞所有请求解决方案是可行的,但是我想在一些模块中尝试一下webflux,然而webflux又不推荐在这种场景下使用。面对的疯狂的用户,300ms内我们这边至少有600个相同的查询落在了数据库上,所以设计系统之初我这边就是相同请求阻塞,放行第一个请求执行查询,将结果写回redis后,再放开所有的阻塞,这样这些请求就全落在了redis集群上,而不至于把600个相同的查询全压给了数据库。

展开
收起
景凌凯 2020-04-22 17:51:58 1259 0
1 条回答
写回答
取消 提交回答
  • 有点尴尬唉 你要寻找的东西已经被吃掉啦!

    响应式的话,只会根据机器当前的允许的并发数进行执行,其他都在阻塞积压,然后第一波数据产生下发完事儿,后续请求会由调度器执行,所以,并不会有多大的性能影响,前面查出来的放入缓存执行即可。webflux的话推荐使用reactor的elastic这个IO类型的调度器

    2020-04-22 17:52:07
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
fibjs 模块重构从回调到协程--陈垒 立即下载
fibjs 模块重构从回调到协程 立即下载
面向失败设计 立即下载

相关实验场景

更多