论坛首页 编程语言技术论坛

使用JProfiler监控JRuby脚本的运行

浏览 1765 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-03-24  

    jruby本质上也是启动一个jvm,然后去读Ruby脚本并解释执行(或者编译),因此jprofiler理所当然也可以去监控jruby脚本的执行。
执行     

jruby hello.rb
等价于执行:
java -Xmx378m -Xss1024k  -Djruby.home=/usr/local/jruby
           -Djruby.lib=/usr/local/jruby/lib 
           Djruby.script=jruby org.jruby.Main hello.rb
 
 这一点,你可以通过ps aux |grep jruby 看到。因此配置jprofiler就简单了,在VM arguments加上这些参数(可以包括jruby的参数),比如我的VM arguments配置如下:
-server -Xmx378m -Xss1024k -Djruby.script=jruby -Djruby.thread.pooling=true
                   -Djruby.jit.threshold=0 -Djruby.compile.fastest=true
                   -Djruby.home=D:\jruby\jruby-1.1RC2 -Djruby.lib=D:\jruby\jruby-1.1RC2\lib
 Main class or executable JAR填上:org.jruby.Main。然后就是Arguments一栏填上你的脚本位置:
D:\rubydemo\lib\hello.rb
 
最后,别忘了将jruby/lib目录下的bsf.jar和jruby.jar加入Class Path。

大功告成,你可以用jprofiler去观察GC、线程和锁、Heap等等了。其他jvm监控工具的配置也应该大同小异。

 

论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics