JRuby性能优化的四点建议

越来越觉的JRuby是个很有前途的项目,结合Ruby简洁的语法和Java极其丰富的类库,况且有团队持续不断地修正bug、改进性能,这样的玩意完全有成为“少男杀手”的潜质。JRuby wiki上列出了性能优化的四条建议:

员工经过长期磨合与沉淀,具备了协作精神,得以通过团队的力量开发出优质的产品。创新互联坚持“专注、创新、易用”的产品理念,因为“专注所以专业、创新互联网站所以易用所以简单”。公司专注于为企业提供成都网站建设、成都做网站、微信公众号开发、电商网站开发,重庆小程序开发公司,软件按需定制网站等一站式互联网企业服务。

1、调优编译器

JRuby早就弃暗投明跟随XRuby走上了编译这条牛B的道路,将Ruby Script编译成字节码,因此这个环节是断断不能忽略的。

两种编译方式:

◆AOT模式:直接生成class文件,脱了Ruby这层皮,咱就是人见人“爱”的Java了。

◆JIT模式:充分利用成熟的jit技术,咱不全脱,朦胧美才是真的美。默认从0.9.9版本开始就是开启的。

 
 
 
  1. jruby -J-Djruby.jit.enabled=false   

2、关闭ObjectSpace

ObjectSpace是Ruby用来操作所有运行时对象的模块,这个功能相当牛x。这个的实现在c ruby里是比较容易的,但是对于JRuby代价就比较昂贵了,其实就大部分情况下你基本用不到这个东东,那么最好就是关闭它,JRuby提供了

 
 
 
  1. jruby -J-Djruby.objectspace.enabled=false   

选项来关闭它。

3、开启线程池

我们知道,在c ruby中的线程是绿色的轻量级线程,因此运行时就动不动开个百来十个“线程”跑一跑充下款爷;然而在JRuby中,线程的实现那可是实打实的本地线程(也就是Ruby线程与Java线程一比一),你这么动不动上百个线程那不慢才怪了。因此JRuby提供了线程池选项,运行时尽可能地满足你的要求开线程,但是当短命的Ruby线程重复创建的时候,这些线程将被复用,这在大多数情况下能提高性能表现,特别是在每次调用都启动一个线程的情况下。不过具体效果还是要测试的实际数据说话。

 
 
 
  1. jruby -J-Djruby.thread.pooling=true 

4、使用Java "server"模式虚拟机,这是大家都知道的JRuby性能优化技巧。

 
 
 
  1. jruby -J-server myscript.rb   

【编辑推荐】

  1. JRuby中调用java带可变参数的方法
  2. 使用JRuby生成JVM代码
  3. JRuby入门教程:从无到有建立第一个Hello World
  4. 如何在tomcat上配置jruby on rails
  5. JRuby:即将进入黄金时段?

标题名称:JRuby性能优化的四点建议
URL分享:http://www.36103.cn/qtweb/news34/17684.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联