Logging 性能统计挂钩

Logging 性能统计挂钩,logging,performance,Logging,Performance,老实说,开发人员生产的大多数软件对性能的要求都很低。例如,系统可能每秒处理100次请求,如果是这样的话 但让我们先假设一下(甚至是做梦),您可能参与了“下一个大事件”(无论这意味着什么),并且您希望在所有用户飞进来时,将某种性能统计信息记录到位,以帮助您解决问题 性能统计记录,您将如何满足这一要求?也许您会使用某种通用框架来实现这一点?还是推出自己的解决方案?你会记录什么?颗粒度如何 或者,当这个问题成为一个问题时,你是否会不厌其烦地把任何东西放在适当的位置,而是处理这个问题 听到你对这个话题的

老实说,开发人员生产的大多数软件对性能的要求都很低。例如,系统可能每秒处理100次请求,如果是这样的话

但让我们先假设一下(甚至是做梦),您可能参与了“下一个大事件”(无论这意味着什么),并且您希望在所有用户飞进来时,将某种性能统计信息记录到位,以帮助您解决问题

性能统计记录,您将如何满足这一要求?也许您会使用某种通用框架来实现这一点?还是推出自己的解决方案?你会记录什么?颗粒度如何

或者,当这个问题成为一个问题时,你是否会不厌其烦地把任何东西放在适当的位置,而是处理这个问题


听到你对这个话题的想法真的很有趣。

我只是想说一下:记录请求事件的时间。还要记录发送的数据包的大小。堆叠所有事件日志。
然后重播它们。使用计数器,然后在一段时间内进行差分以获得速率,您可以绘制结果图并观察模式。基本上,每秒增量字节数是一个很好的警报。

最近我问自己同样的问题。我开发了自己的统计计数器。但我对结果并不完全满意(统计数据占用了太多堆,在决定为存储选择内存模型时做出了错误的选择)

你必须回答的问题是:我多久看一次这些数据

在我的情况下,不经常(这就是为什么只存储内存的存储器对我来说是一个糟糕的选择)

我想知道是否应该将存储模型移动到类似jrobin(循环数据库模型的java impl)的地方


我最近还发现perf4j()项目

perf4j看起来很有趣。日志将变得非常庞大,所以我想知道是否有工具可以帮助您将这些信息聚合成有用的东西?自2010年以来,已经产生了很多新的很酷的东西。我喜欢的性能工具是Metrics()。