我有这个问题,我只是把它扔在那里。我正在为基于 Spring 的 REST API 服务器实现一个小型日志记录功能,用于记录所有传入的请求。我希望有 1000 名用户使用此 API,因此使用阻塞 i/o 记录器,它会减慢一切。我有两种方法来解决这个问题: 1. 有一个使用内存中数组的异步记录器。然后使用 spring 调度程序定期将其刷新到日志文件中。2. 使用 JMS 并将日志发送到队列。让队列异步处理日志记录。
有没有人在春天做过这个。虽然我支持选项 2,但有更好的方法吗?需要一些专家的建议。谢谢大家 !
更多信息 - 我认为同步日志记录将是一个瓶颈,因为这个 REST API 由前端 RoR 应用程序使用。因此,用户的一次会话肯定会导致非常频繁地发生 100 次 API 调用。我正在记录实际请求以及 POST 中发送的 JSON。