我目前正在编写一个Java应用程序,该程序从各种传感器接收数据。这种情况的发生频率各不相同,但我相信我的应用程序每天会收到大约10万次的信号。我想记录每次应用程序收到信号时从传感器接收到的数据。由于应用程序不仅仅要记录传感器数据,因此性能是一个问题。我正在寻找记录数据的最佳和最快方法。因此,我可能不使用数据库,而是写入文件并每天保留1个文件。

那么什么更快呢?使用数据库还是登录文件?毫无疑问,要使用的日志软件也有很多选择。如果最好记录到文件,哪个对我而言是最好的?

存储的数据可能会在以后用于分析目的,因此也请记住这一点。

最佳答案

我建议您首先使用log4j(或任何其他日志记录框架)。
您可以使用写入数据库的jdbc附加程序或写入文件的任何类型的文件附加程序。关键是您的代码将具有足够的通用性,以便您以后可以更改...

通常,文件访问比数据库访问快得多,但是这里有一个优化的地方。
如果性能至关重要,则可以对日志记录基础结构使用批处理/异步调用。

10-04 20:12
查看更多