我计划使用spring webflux将我的微服务重构为从阻止实现到反应式API。我对此毫不怀疑:
1)是否选择基于注释的控制器或功能路由器? 2)是否有对被动假冒客户的支持?
请帮助。
答案 0 :(得分:0)
您可以检查以下库:https://github.com/Playtika/feign-reactive
在Spring WebClient上实现Feign。为您带来最好的 两个世界在一起:Feign的简洁语法编写客户端API 在Spring WebClient的快速,异步且无阻塞的HTTP客户端上
答案 1 :(得分:0)
如果没有正确使用示例说明如何设置事情,我发现这个问题不完整。
由于op没有提及目标语言,因此我想分享适用于我的情况的Kotlin设置:
build.gradle.kts
id
Config.kt
implementation("org.springframework.boot:spring-boot-starter-webflux")
implementation("com.playtika.reactivefeign:feign-reactor-core:2.0.22")
implementation("com.playtika.reactivefeign:feign-reactor-spring-configuration:2.0.22")
implementation("com.playtika.reactivefeign:feign-reactor-webclient:2.0.22")
MyFeignClient.kt
@Configuration
@EnableWebFlux
@EnableReactiveFeignClients
class Config {
}
然后在某些服务类中添加代码:
@Component
@ReactiveFeignClient(
url = "\${package.service.my-service-url}",
name = "client"
)
interface MyFeignClient {
@GetMapping(value = ["/my/url?my_param={my_value}"], consumes = ["application/json"])
fun getValues(
@PathVariable(name = "my_value") myValue: String?,
): Mono<MyEntity?>?
}