gpt4 book ai didi

java - 如何在Java中的多个线程之间共享公共(public)日志文件

转载 作者:行者123 更新时间:2023-12-01 23:24:48 25 4
gpt4 key购买 nike

我们可以在读取和写入日志文件的多个线程之间共享同一个日志文件吗?

首先像并发收集一样将消息转储到双端队列中,然后定期将数据从双端队列转储到日志文件中,这是一个好主意吗?

请分享任何示例/指针以获得最佳性能。

最佳答案

假设线程指的是在同一台计算机或分布式环境中运行的应用程序/程序,而不是同一应用程序中的多个线程。

然后...

  • 如果您使用 Log4J 作为日志记录框架,您可以通过 SocketAppender 实现日志记录(请参阅 Log4J appenders )。然后,您的各种应用程序可以连接到您编写的单独的“日志记录”服务,以将所有日志合并到一个文件中。

  • 另一种选择是让所有应用程序在特定队列(例如 RabbitMQ)上注册为生产者,其中日志行作为消息发布。然后您可以再次拥有一个单独的使用者,它使用消息并将它们写入您的日志。

关于java - 如何在Java中的多个线程之间共享公共(public)日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58309967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com