目前在我的应用程序中,在某些点上,我们正在将一些重要的内容记录到日志文件中。
基本上只是为了记录,我们正在创建可用数据的JSON,然后记录到日志文件中。这是记录数据以JSON格式的业务需求。
现在从可用数据创建JSON,然后记录到文件中需要很长时间,并影响原始请求返回时间。现在的想法是改善这种情况。
我们讨论过的其中一件事是使用线程池来创建。
Executors.newSingleThreadExecutor()
在我们的代码中,我们将任务提交给它,然后进行数据转换为JSON并进行日志记录。
这是一个好的方法吗?由于我们正在管理线程池本身,这会创建一些问题吗?
如果有人能分享更好的解决方案,我将不胜感激。可以尝试使用Log4j来解决这个问题。我尝试使用AsyncAppender,但没有达到任何预期的结果。
我们正在使用EJB 3、JBoss 5.0、Log4j和Java6。