关于 Spring Cloud Gateway 中异步的使用

2022-10-27 10:58:40 +08:00
 AerithLoveMe
最近使用 Spring Cloud Gateway 搭建了个网关学习学习,请问如果我想在过滤器中调用内部其它 restful 接口,最佳实践是什么?

如果我直接用 openfeign 调用传统基于 servlet 的接口(比如进行权限相关的校验),IDE 都会提示不要在 webflux 中使用阻塞式调用,那请问各位应该怎么做呢?

刚刚学习响应式,很多都不是很懂,希望大佬不吝赐教。
1144 次点击
所在节点    问与答
5 条回复
AerithLoveMe
2022-10-27 10:59:42 +08:00
还是说这样本来就不好,应该把其它接口也做成基于 webflux 的?
leafre
2022-10-27 11:06:09 +08:00
现在没必要学这个,直接 k8s
xhldtc
2022-10-27 13:44:42 +08:00
响应式编程这玩意太复杂,你把握不住。有兴趣可以看看 Scala 里的 Future 和 web 框架 Play 是怎么写 web 接口的,Future 的功能比 java 强大很多
yizmaoaa
2022-10-27 13:58:56 +08:00
openfeign 是不支持 reactive 的,不过你可以使用 Spring 官方推荐的 https://github.com/PlaytikaOSS/feign-reactive

这个库,这个库也不是重新写的,只是在 openfeign 的基础上包了一层 reactive 的。
taixujianyi
2022-10-27 14:35:26 +08:00
可以用 spring-webflux 中的 org.springframework.web.reactive.function.client.WebClient 进行调用

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/890295

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX