说实话,开发人员生产的大多数软件都有相当适中的性能要求。例如。系统可能每秒提供100个请求,如果那样的话。
但是我们假设你可能会参与“下一件大事”(无论那意味着什么)并且你想在某些时候提供某种性能统计数据来帮助你那些用户飞来。
性能统计日志记录,您将如何处理此要求?也许你会为此使用某种通用框架?或者推出自己的解决方案?你会记录什么?多么精细?
或者你甚至不打算把任何东西放在适当的位置,而是在实际成为问题时处理这个问题?
听到你对这个主题的看法真的很有趣。
答案 0 :(得分:1)
我只是把它扔出去:记录请求事件的时间。还要记录发送的数据包的大小。堆叠所有事件日志。 然后重播他们。使用计数器,然后随着时间的推移做差异以获得速率,您可以绘制结果图并观察模式。基本上每秒delta字节是一个很好的警报。
答案 1 :(得分:1)
我最近问了同样的问题。我开发了自己的统计数据。但是我对结果并不完全满意(统计数据消耗了太多的堆,在决定为存储选择内存模型时做出了错误的选择)。
你必须回答的问题是:我多久会看一次这些统计数据?
就我而言,不常见(这就是为什么仅限内存的存储对我来说是一个糟糕的选择)。
我想知道是否应该将存储模型移动到像jrobin这样的东西(循环数据库模型的java impl)。
我最近还发现了perf4j(http://perf4j.codehaus.org/)项目