读书人

动态署理方案性能对比

发布时间: 2012-12-23 11:28:15 作者: rapoo

动态代理方案性能对比
转于自己在公司的Blog:
http://pt.alibaba-inc.com/wp/experience_1054/dynamic_proxy_performance.html

因服务框架需要用动态代理生成客户端接口的stub,所以做了一下性能评测,
动态代理工具比较成熟的产品有:
JDK自带的,ASM,CGLIB(基于ASM包装),JAVAASSIST,
使用的版本分别为:
JDK-1.6.0_18-b07, ASM-3.3, CGLIB-2.2, JAVAASSIST-3.11.0.GA

(一) 测试结果:
数据为执行三次,每次调用一千万次代理方法的结果,测试代码后面有贴出。

(1) PC机测试结果:Linux 2.6.9-42.ELsmp(32bit), 2 Cores CPU(Intel Pentium4 3.06GHz)



(六) 字节码对比

(1) JDK生成的字节码:
private static BytecodeProvider buildBytecodeProvider(String providerName){    if ( "javassist".equals( providerName ) ) {return new org.hibernate.bytecode.javassist.BytecodeProviderImpl();    }else if ( "cglib".equals( providerName ) ) {return new org.hibernate.bytecode.cglib.BytecodeProviderImpl();    }    .......


Gavin King也是RedHat旗下的,当然选同宗的了,呵呵。

读书人网 >编程

热点推荐