【问题标题】:Yourkit profiler with playframework 2.2.3带有 playframework 2.2.3 的 Yourkit 分析器
【发布时间】:2014-07-04 14:08:34
【问题描述】:

有人要求我调查 Playframework 2.2.3 应用程序的一些性能问题。我之前有使用 playframework 1 的经验,但我意识到 2.x 非常不同。

有没有人设法将 Yourkit profiler 与 play 2 一起使用?我设法通过在框架/构建脚本中的 java 命令中添加一个选项来附加代理。这只会将代理附加到 sbt 启动器,因此一旦启动真正的应用程序,代理就会死亡。

有人对此有解决方案吗?也许我需要使用'play dist'

乔恩

【问题讨论】:

    标签: playframework playframework-2.2 yourkit


    【解决方案1】:

    一种方法是创建一个 dist 并从那里使用参数运行它,您将在 target/universal/stage/bin/yourappname 下获得一个可运行的对象,您可以使用 JAVA_OPTS-J-... 参数将参数传递给它。

    另一种方法是通过您的 sbt 配置提供相同的参数,然后将其传递给相同的脚本(开始只是构建和运行),请注意,因为它是脚本而不是您需要的实际 jvm -J 要发送到 JVM 的任何参数的前缀:

    javaOptions in Production += "-J-something"
    

    【讨论】:

    • 我选择了 'play dist' 选项并在执行前设置了 JAVA_OPTS="-agentpath:/tmp/yjp-2013-build-13086/bin/linux-x86-64/libyjpagent.so" 'target/universal/stage/bin/yourappname' 我现在附上了分析器,谢谢。
    【解决方案2】:

    对于其他来这里了解如何让 Yourkit 与 IntelliJ 中的 Play 2x 一起工作的人 - 以下是我根据接受的答案所做的快速总结:

    1) 安装 Yourkit 并验证插件在 IntelliJ 中显示。

    2) 安装 yourkit 后在 IntelliJ 中编辑我的运行配置,将以下内容添加到 JVM 选项中: -agentpath:C:\PROGRA~2\YOURKI~1\bin\win64\yjpagent.dll

    插入 your yourkit 的路径(x86 有 win32)。我在使用 Windows 样式路径时遇到了麻烦,必须使用 DOS short version 才能工作。在这里你可以找到Enabling profiling manually的手册!

    【讨论】:

      【解决方案3】:

      使用 Play 2.4,您可以使用 SBT 插件 sbt-yourkit 为 Unix/Linux 系统(不在 SBT 中运行)上的生产发行版启用 YourKit。这将添加适当的 YourKit 代理共享对象和启动标志,以允许 Play 在生产中使用代理。

      代理被添加到由sbt disthere 描述的其他构建目标生成的存档中。

      添加插件的步骤是:

      1. 将插件添加到您的 SBT 构建中,例如将以下内容添加到project/plugins.sbt

        addSbtPlugin("com.gilt.sbt" % "sbt-yourkit" % "0.0.2")

      2. YourKit AutoPlugin 添加到您的项目定义中,例如将以下内容添加到build.sbt:

        enablePlugins(YourKit)

      更多信息请参见上面的插件链接。

      注意:这不会在 Play 的开发模式下启用 YourKit 调试。如果您想在本地使用 YourKit 测试您的程序,可能最简单的方法是使用 universal:stage 目标创建一个包含您的应用程序的目录 - 这通常会在 <PROJECT_DIRECTORY>/target/universal/stage 下创建一个目录,您可以运行您的bin/ 目录中的脚本中的应用程序(包括 YourKit 集成)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多