Controller.java
| import cn.jdw.silky.retrofit.SilkyWebFluxClient; |
| import lombok.RequiredArgsConstructor; |
| import org.springframework.web.bind.annotation.GetMapping; |
| import org.springframework.web.bind.annotation.PathVariable; |
| import org.springframework.web.bind.annotation.RestController; |
| import reactor.core.publisher.Mono; |
| |
| import java.io.IOException; |
| |
| @RestController |
| @RequiredArgsConstructor |
| public class ConsumeController { |
| private final SilkyWebFluxClient silkyWebFluxClient; |
| |
| @GetMapping("/producer/sleep/{seconds}") |
| Mono<String> sleep(@PathVariable("seconds") int seconds) throws IOException { |
| return silkyWebFluxClient.port(seconds); |
| } |
| } |
| |
ApplicationTest.java
| import org.junit.jupiter.api.Test; |
| import org.springframework.beans.factory.annotation.Autowired; |
| import org.springframework.boot.test.context.SpringBootTest; |
| import org.springframework.http.MediaType; |
| import org.springframework.test.context.ActiveProfiles; |
| import org.springframework.test.web.reactive.server.WebTestClient; |
| import org.springframework.web.reactive.function.client.WebClient; |
| |
| import java.net.URI; |
| import java.util.stream.IntStream; |
| |
| |
| |
| |
| @ActiveProfiles("native") |
| @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT) |
| public class SquareWebServerTest { |
| @Autowired |
| private WebTestClient webClient; |
| |
| @Test |
| void contextLoads() { |
| IntStream.range(1, 20).parallel().forEach(i -> { |
| var result = webClient.get().uri("/producer/sleep/3") |
| .accept(MediaType.APPLICATION_JSON) |
| .exchange() |
| .expectStatus().isOk() |
| .expectBody(String.class).returnResult().getResponseBody(); |
| System.out.println(result); |
| }); |
| } |
| } |
| |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律