gpt4 book ai didi

performance - 开发和生产模式之间的性能差异有哪些?

转载 作者:行者123 更新时间:2023-12-02 14:07:54 27 4
gpt4 key购买 nike

这个例子
我正在编写一个实用程序,使用OpenCSV来转换CSV中的域类,pojo和pogo。我创建的示例可用on git
想法是转到TestController的索引 Action ,然后单击将进行ajax调用的按钮。此ajax将以CSV格式转换在 bootstrap 上创建的域类Test的所有实例,并将此文本返回到 View 。

  • Bootstrap创建5000条域类Test记录
  • 用户转到索引页面: / csv-example / test / index
  • 用户按下按钮,发出ajax请求
  • Controller 列出所有测试记录
  • Controller 将ArrayList转换为CSV格式的String
  • DefaultCSVConverter将为类Test
  • 寻找序列化程序
  • DomainClassSerializer将转换List<String[]>中的实例
  • DefaultCSVConverter将使用 OpenCSV 来编写List<String[]>


  • 问题
    如果我以 production模式运行此示例应用程序,则Grails的速度要快得多,并且我试图了解原因。我已经尝试在 dev模式下运行,禁用了Realoding代理:
    grails Ddisable.auto.recompile=true -noreloading run-app
    这对转换实例所花费的时间没有影响。
    所以我的问题是:除了重装剂之外,还有什么能使这种性能在开发和生产模式之间有所不同?
    环保
    Grails 2.2.1
    赢7 x64
    JDK 1.6.0_43 64位

    最佳答案

    差异似乎是由国际化引起的。 PluginAwareResourceBundleMessageSource在dev和prod运行模式之间具有不同的性能。发现我使用了Jvisualvm,在开发和生产模式下对CPU进行了性能分析。

    要启动Grails

    set GRAILS_OPTS=-Xverify:none -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8500 -Dcom.sun.management.jmxremote.authenticate=false -

    grails -Ddisable.auto.recompile=true -noreloading run-app

    启动jvisualvm
    jvisualvm -J-Xms1G -J-Xmx1G –cp:a path/to/app/target/classes

    分析结果应类似于此

    关于performance - 开发和生产模式之间的性能差异有哪些?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15979291/

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