gpt4 book ai didi

c++ - 您如何管理日志记录性能?

转载 作者:IT王子 更新时间:2023-10-29 00:53:53 24 4
gpt4 key购买 nike

我们有一个消息处理系统,其中低延迟至关重要。最近,我发现虽然我们通过我们的系统保持高利率,但我们看到了一些“异常值”。 (消息花费的时间比它们应该花费的时间长得多)当我们删除日志记录时,我们的系统不会显示这些异常值。

现在我们的日志记录基本上只是一个包装的 ostream,具有一些类似于 log4j 的日志记录级功能(调试、致命、调试等)。

我想知道,其他人如何管理日志记录性能,特别是在消息处理事件中?您如何管理这些受 I/O 限制的事件?你把它去掉吗?您是否改用数据库?

感谢任何优化日志记录的建议。

注意:我知道我们的系统可能存在其他导致异常值的问题,但为了这个问题,我只对日志记录优化感兴趣,谢谢。

此外:我们的系统必须记录日志。

最佳答案

我想这在某种程度上取决于操作系统。

在 win32 上,我们的日志子系统只是将消息排队等待处理磁盘 I/O 的日志线程。

这将磁盘 I/O 性能与时间关键线程分离,并使我们能够很好地控制队列锁定的方式和时间。

关于c++ - 您如何管理日志记录性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1027988/

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