![](/img/trans.png)
[英]Java Servlets: How to share common behaviour among multiple servlets?
[英]How to share common log file among multiple threads in Java
我们可以在读取和写入它的多个线程之间共享同一个日志文件吗?
首先在 Deque 中转储消息,例如并发收集,然后定期将数据从 deque 转储到日志文件,这是一个好主意吗?
请分享任何示例/指针以获得最佳性能。
假设您指的是在同一台机器上或在分布式环境中运行的应用程序/程序,而不是同一应用程序中的多个线程。
然后...
如果你使用 Log4J 作为你的日志框架,你可以通过一个SocketAppender
来实现你的日志(参见Log4J appenders )。 然后,您的各种应用程序可以连接到您编写的单独的“日志记录”服务,以将所有日志合并到一个文件中。
另一种选择是让您的所有应用程序在特定队列(如 RabbitMQ)上注册为生产者,其中日志行作为消息发布。 然后你可以再次拥有一个单独的消费者,它消费消息并将它们写入你的日志。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.