gpt4 book ai didi

java - 性能提升 : toString()

转载 作者:搜寻专家 更新时间:2023-11-01 01:22:21 25 4
gpt4 key购买 nike

我们正在开发相当大的服务器应用程序。每个操作都由日志跟踪。有很多调用 toString 方法的日志。不幸的是,我们需要其中的大部分,另一方面我们无法跟踪产品上发生的事情。尝试改进 toString 方法是否有意义?例如,将 toString 的结果放入内存中,并在某些字段更新时更新。

example of my toString
public classs InMessage{
//declared 20+ fields
@Override
public String toString() {
StringBuilder builder = new StringBuilder(this.getClass().getSimpleName());
builder.append(": [");
builder.append(super.toString());
builder.append("; updateTime: ");
builder.append(updateTime);
//forexample 20 fields here
builder.append(";]");
return builder.toString();
}}
then we process InMessage in some way and log each action
log.debug("We received inMessage: {}", inMessage);

经过这次讨论,我们决定尽可能减少日志数量,仅此而已。

最佳答案

除非您遇到性能或内存问题,否则不要担心。有用的日志可以极大地帮助产品诊断,您需要将其与可能永远不会发生的假设性能担忧进行权衡。

(并不是说您在这里肯定没有问题,只是不要针对不是真正问题的东西进行优化...)

编辑:相信您自己对记录是否“过多”的判断;如果单个 UI 或服务操作生成 20 页的附带/调试级别信息,即使是 INFO 级别的日志记录,您可能也需要提炼内容以使其真正有用

关于java - 性能提升 : toString(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14876251/

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