日志文件句柄如何设计比较好?


写了一个异步服务器,用于处理网站的非实时性请求。目前每秒约写入10-100条日志,高峰时期可能写入约1000条日志。

我能想到的关于日志文件处理方法有下面几种,请问一般是如何实现的呢?

方法一:
每次写日志时获得文件句柄,写入后关闭。

方法二:
句柄作为单例,存在与整个程序生命周期,只有程序结束时才关闭。

方法三:
句柄作为单例,存在与整个程序生命周期,定期关闭重新打开。

java 程序设计

侵食ドルチェ 11 years, 5 months ago

尝试引入一个队列,写日志的地方实时写入,消费日志的地方采用异步的方式,这样能否满足需求呢

连续忘三个号 answered 11 years, 5 months ago

方法二,在出错的时候才重新尝试打开句柄

narya answered 11 years, 5 months ago

工程上实际使用过方法三,可能我的需求跟你的有些不同。我的日志的写频度一般情况下不会超过10条/秒,但是日志文件需要按天保存,定期删掉旧文件(保存近7天的日志等等),所以定期关闭是必须的~

幕後BOSS answered 11 years, 5 months ago

Your Answer