小编Ybr*_*bri的帖子

如何预热java类以避免首次调用缓慢?

我正在做一个项目,我需要所有 API 调用的时间少于 1 秒,但我面临的问题是,对每个路由的第一次调用比以下路由慢。

目前,对 /login 的第一次调用需要 3.6 秒,接下来的调用需要 170 毫秒,所有其他路由都相同。

我发现-XX:+TraceClassLoading在第一次调用时使用它,类被加载到内存中,这导致了性能问题。

但是,我没有找到在启动时加载所有类的简单方法,对于每个新服务,我需要在 ApplicationRunner 中添加一个预热调用。

有没有人有自动加载 SpringBoot 应用程序的类或预热其所有路由的解决方案?

java performance spring spring-boot

13
推荐指数
1
解决办法
1100
查看次数

Cypress Web 套接字错误:缺少“Sec-WebSocket-Accept”标头

我正在尝试使用 Cypress 测试 VueJs 应用程序。

一切正常,除了 websocket 连接失败并显示以下消息:

Error during WebSocket handshake: 'Sec-WebSocket-Accept' header is missing

在开发或部署中,它可以正常工作,并且存在“Sec-WebSocket-Accept”标头,但不知道为什么 Cypress 会失败。

任何想法?

testing websocket vue.js cypress

5
推荐指数
0
解决办法
245
查看次数

Mockito MockedStatic when()“无法解析方法”

我正在尝试使用 Mockito MockedStatic 来模拟静态方法。

我将mockito-core和mockito-inline版本3.6.0与Spring Boot和maven一起使用。

我无法使模拟工作,我有一个“无法解析方法帖子”,Unirest::post您可以在下面的代码中看到:

@Test
public void test() {
    try (MockedStatic<Unirest> mock = Mockito.mockStatic(Unirest.class)) {
        mock.when(Unirest::post).thenReturn(new HttpRequestWithBody(HttpMethod.POST, "url"));
    }
}
Run Code Online (Sandbox Code Playgroud)

Unirest 类来自unirest-java包。

有人遇到过这个问题并有解决方案吗?

mocking mockito spring-boot

2
推荐指数
1
解决办法
6485
查看次数