客户端断开连接后spring rsocket cpu使用率高

wecizke3  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(249)

我创建了一个带有spring rsocket支持的简单rsocket端点:

@Controller
class SampleController {

    @MessageMapping("sample")
    fun sample(): Flux<ByteArray> {
        return Flux
            .fromIterable(generateSequence(1) { it + 1 }.asIterable())
            .delayElements(Duration.ofSeconds(2))
            .doOnNext { println(it) }
            .map { it.toString().toByteArray() }
    }
}

只要客户机连接并拉取数据,这种方法就可以正常工作: rsc tcp://localhost:8888 --stream --route sample 一旦我取消这个,cpu使用率将达到20%。如果我多跑 rsc 在并行的客户机中,当我取消所有这些客户机时,cpu使用率将>50%。
我试图寻找一些在服务器端有清理的样本,但没有找到任何东西。此外,我还启用了全局调试日志记录级别( logging.level.root=DEBUG ),但客户端取消后,日志中没有任何内容。我在想,也许有某种自动重新连接机制,启动并开始垃圾邮件请求。
那么,我是不是漏掉了什么,有没有这样的行为?

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题