执行

Java REST服务性能测试我看到一个意外的模式:在每次调用中创建并返回相同值对象的方法比仅返回存储在类或对象字段中的值对象的另一个版本运行得更快.

码:

@POST @Path("inline") public Response inline(String s) {

return Response.status(Status.CREATED).build();

}

private static final Response RESP = Response.status(Status.CREATED).build();

@POST @Path("staticfield") public Response static(String s) {

return RESP;

}

private final Response resp = Response.status(Status.CREATED).build();

@POST @Path("field") public Response field(String s) {

return resp;

}

字节代码:

>内联(更快):getstatic,invokestatic,invokevirtual,areturn

>静态归档(较慢):getstatic,areturn

>对象字段(较慢):aload,getfield,areturn

性能(使用Apache AB,单线程,多次运行,结果一致):

>内联:17078.29 [#/ sec](平均值)

>静态字段:5242.64 [#/ sec](平均值)

>对象字段:5417.40 [#/ sec](平均值)

环境:RHEL6 JDK Oracle 1.7.0_60-b19 64位

有可能JVM使用本机代码优化了内联版本,但从未考虑优化其他两个因为它们已经非常小了吗?

adding oracle jvm 慢,java – 什么JVM优化导致这些性能结果?相关推荐

  1. JVM(Java虚拟机)优化大全和案例实战

    参考:http://www.uml.org.cn/j2ee/201405075.asp 堆内存设置 原理 JVM堆内存分为2块:Permanent Space 和 Heap Space. Perman ...

  2. oracle 并行用索引,分区索引并行导致的性能问题

    问题现象;生产环境报ORA-17144=statement handle not executed 然后我把sql抓出来手工运行一遍执行计划如下:--------------------------- ...

  3. JVM: java虚拟机

    JVM: java虚拟机 jvm运行我们编写的.java文件转换后的.class文件 问题一 :Class在本地磁盘上 如何记载到jvm中 问题二:jvm又是如何加载java程序所使用的系统类(系统j ...

  4. 如何实现java虚拟机的优化_Java虚拟机JVM优化实战的过程全记录

    前言 Java虚拟机是运行所有Java程序的抽象计算机,是Java语言的运行环境,它是Java 最具吸引力的特性之一.Java虚拟机是通过在实际的计算机上仿真模拟各种计算机功能模拟来实现的,通过Jav ...

  5. java虚拟机参数优化_JAVA虚拟机JVM参数优化(2):垃圾收集算法选择

    JAVA虚拟机JVM优化重要性,昨天JAVA虚拟机JVM参数优化(1)文章中已经描述,今天我们来讨论JAVA虚拟机在不同性能要求下如何选择三种垃圾收集算法. JVM内部结构如下图所示: 串行收集用于单 ...

  6. 【读书笔记】实战JAVA虚拟机JVM故障诊断与性能优化 读书笔记

    文章目录 1.概述 1.1 **第一章:初探java虚拟机** 1.2 认识java虚拟机的基本结构 1.3 常用Java虚拟机参数 1.4 垃圾回收器 1.5 垃圾收集器以及内存分配 1.6 性能监 ...

  7. 实战java虚拟机 百度云_《实战JAVA虚拟机 JVM故障诊断与性能优化》pdf百度云下载...

    内容简介· · · · · · 随着越来越多的第三方语言(Groovy.Scala.JRuby等)在Java虚拟机上运行,Java也俨然成为了一个充满活力的生态圈.<实战Java虚拟机--JVM ...

  8. 一、JVM及Java体系结构

    文章目录 1.跨平台的语言Java和跨语言的平台JVM (1)Java生态圈 (2)Java跨平台的语言 (3)JVM:跨语言的平台 2.字节码与多语言混合编程 (1)字节码 (2)多语言混合编程 3 ...

  9. 2019年Java和JVM生态系统预测:OpenJDK将成为Java运行时市场领导者

    本文对2019年Java和JVM生态系统做了一些预测. 正如InfoQ 2018年度总结中说的那样,Java在2018年的发展势头非常有意思. 在我们步入2019之际,让我们来看看在新的一年中Java ...

最新文章

  1. 线程执行者(十一)执行者分离任务的启动和结果的处理
  2. CentOS 6 同一台机器部署多个Tomcat应用服务器
  3. 【PAT (Advanced Level) Practice】1086 Tree Traversals Again (25 分)
  4. 配置 html-webpack-plugin 生成预览页面||配置自动打包相关的参数
  5. python装饰器实现对异常代码出现进行监控
  6. 【APICloud系列|9】APICloud自定义APPloader一个月未更新,快速更新的办法
  7. 10天时间做出php,php 最近10天的所有日期
  8. 6个web前端核心技术,你学到哪个了呢?
  9. uni-app登录+记住密码
  10. SVN Description : The working copy is locked due to a previous error.
  11. python求绝对值_python求绝对值
  12. 【学习笔记】极其美妙的算法——FFT(快速傅里叶变换)
  13. win10时间线时间轴(Timeline)如何关闭隐藏?
  14. Win7 Python3.5安装Scrapy
  15. element-ui+vue,翻页添加首页、尾页跳转按钮
  16. csu1671 经营小卖部(DP 完全背包 好题)
  17. 你坐飞机时可能意识不到,AI已经全流程为你保驾护航
  18. 开始利用CSDN做学习笔记,从windows 游戏编程大师技巧和3D游戏编程大师开始
  19. 第三方登陆(二)QQ登陆
  20. 如何去除有道云笔记广告(windows)

热门文章

  1. 开发人员如何解决Linux性能优化之痛?
  2. 服务器上装centos系统花屏,CentOS系统如何解决鼠标花屏的问题
  3. json中{}和[]的区别
  4. Command ‘[‘ninja‘, ‘-v‘]‘ returned non-zero exit status 1
  5. mxnet pick挑选
  6. elasticsearch(7)聚合统计-分组聚合
  7. 找到一个或多个多重定义的符号
  8. Python操作Zip文件
  9. python显示图片
  10. 负载均衡算法及其Java代码实现