`
znjq
  • 浏览: 24551 次
社区版块
存档分类
最新评论

JAVA_PHPRPC_HESSIAN_AMF3_JSON_BURLAP 性能比较

阅读更多
测试机:T42 1.5G 内存
JDK 1.6
AMF的包用的是官方的,版本4.0

PHPRPC的商业版本,不知如何获取,无法评测,据作者说性能是PHPRPC的10倍.怀疑有点夸张.
--------------------------------------------------------------------------------
20000次对整数12
Java - 时间:211|520 长度:81
PHPRPC - 时间:91|30 长度:5
Hessian - 时间:30|20 长度:5
Hessian2 - 时间:90|30 长度:4
Burlap - 时间:30|40 长度:13
AMF3 - 时间:30|40 长度:2
json-lib - 时间:101|2363 长度:2
jsonplugin - 时间:40|30 长度:2
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对布尔值true
Java - 时间:170|291 长度:47
PHPRPC - 时间:20|10 长度:4
Hessian - 时间:10|0 长度:1
Hessian2 - 时间:110|0 长度:4
Burlap - 时间:20|50 长度:20
AMF3 - 时间:10|20 长度:1
json-lib - 时间:30|2133 长度:2
jsonplugin - 时间:10|10 长度:4
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对 null
Java - 时间:51|30 长度:5
PHPRPC - 时间:20|0 长度:2
Hessian - 时间:0|10 长度:1
Hessian2 - 时间:110|10 长度:4
Burlap - 时间:20|20 长度:13
AMF3 - 时间:10|20 长度:1
json-lib - 时间:20|20 长度:4
jsonplugin - 时间:30|0 长度:4
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对浮点数1.2
Java - 时间:130|421 长度:84
PHPRPC - 时间:70|40 长度:6
Hessian - 时间:20|10 长度:9
Hessian2 - 时间:130|10 长度:8
Burlap - 时间:50|40 长度:20
AMF3 - 时间:30|40 长度:9
json-lib - 时间:31|2153 长度:2
jsonplugin - 时间:30|30 长度:3
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对UInt64型1234567890987654321
Java - 时间:100|420 长度:82
PHPRPC - 时间:41|40 长度:22
Hessian - 时间:10|10 长度:9
Hessian2 - 时间:90|10 长度:12
Burlap - 时间:40|40 长度:32
AMF3 - 时间:10|20 长度:9
json-lib - 时间:30|2113 长度:2
jsonplugin - 时间:30|40 长度:19
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对无穷大
Java - 时间:100|421 长度:84
PHPRPC - 时间:20|10 长度:6
Hessian - 时间:10|0 长度:9
Hessian2 - 时间:90|10 长度:12
Burlap - 时间:30|50 长度:25
AMF3 - 时间:0|20 长度:9
json-lib - 时间:40|2113 长度:2
jsonplugin 不支持该类型
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对字符串“PHPRPC - perfect high performance remote procedure call”
Java - 时间:60|60 长度:62
PHPRPC - 时间:101|10 长度:63
Hessian - 时间:40|80 长度:58
Hessian2 - 时间:100|70 长度:60
Burlap - 时间:50|100 长度:72
AMF3 - 时间:30|40 长度:57
json-lib 不支持该类型
jsonplugin - 时间:60|51 长度:57
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
2000次对10000个元素的字节数组
Java - 时间:100|60 长度:10027
PHPRPC - 时间:70|20 长度:10011
Hessian - 时间:20|991 长度:10003
Hessian2 - 时间:70|782 长度:10018
Burlap - 时间:1151|1042 长度:13405
AMF3 - 时间:40|20 长度:10004
json-lib - 时间:3184|15943 长度:36465
jsonplugin - 时间:11217|11526 长度:36465
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
2000次对100个相同元素的字符串数组
Java - 时间:50|80 长度:597
PHPRPC - 时间:301|210 长度:957
Hessian - 时间:371|621 长度:5817
Hessian2 - 时间:230|481 长度:5717
Burlap - 时间:450|781 长度:7253
AMF3 - 时间:40|81 长度:259
json-lib - 时间:190|70 长度:5801
jsonplugin - 时间:601|380 长度:5801
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
2000次对100个不同元素的字符串数组
Java - 时间:401|330 长度:6034
PHPRPC - 时间:812|240 长度:6988
Hessian - 时间:390|621 长度:6007
Hessian2 - 时间:231|480 长度:5907
Burlap - 时间:491|781 长度:7443
AMF3 - 时间:311|230 长度:5894
json-lib - 时间:170|60 长度:5991
jsonplugin - 时间:611|381 长度:5991
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
2000次对索引不同内容不同具有100个字符串元素和字符串索引的 Hashtable
Java - 时间:871|741 长度:12172
PHPRPC - 时间:1292|521 长度:13098
Hessian - 时间:821|1672 长度:12095
Hessian2 - 时间:461|1092 长度:11901
Burlap - 时间:1091|2043 长度:14914
AMF3 - 时间:601|511 长度:11793
json-lib - 时间:200|1362 长度:12091
jsonplugin - 时间:1222|861 长度:12091
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
20000次对自定义类型对象
Java - 时间:420|952 长度:137
PHPRPC - 时间:1041|511 长度:128
Hessian - 时间:5397|501 长度:97
Hessian2 - 时间:5318|480 长度:79
Burlap - 时间:5268|671 长度:215
AMF3 - 时间:290|461 长度:79
json-lib - 时间:450|2594 长度:61
jsonplugin - 时间:13760|100 长度:61
--------------------------------------------------------------------------------

AMF3 无论是时间上,还是空间上都要好一些





1
1
分享到:
评论
1 楼 kuro_0505 2012-03-27  
厉害~~顶~~

相关推荐

    json.rar_Soap To json_java webservice json_json rpc SOAP_json we

    3. **JSON-RPC**:JSON-RPC是一种远程过程调用(RPC)协议,使用JSON作为数据交换格式。相比传统的SOAP,JSON-RPC更加轻量级且更易于实现,适合低延迟、高吞吐量的应用场景。 4. **SOAP JSON**:这指的是将SOAP协议...

    jsonrpc-example.rar_JsonRpcClient php_php jsonrpc_php rpc pyth

    3. Python服务器脚本:实现JSON-RPC服务端,接受并响应PHP客户端的请求。 4. 可能还包含测试用例和其他辅助文件,如配置文件或日志记录脚本。 通过这个示例,开发者可以学习如何在实际项目中使用JSON-RPC进行跨语言...

    phprpc_3.0_delphi.zip_Free!_PHPRPC delp_PHPRPC for delp_delphi

    联系web和windows 应用的软件PHPRPC. PHPRPC for Delphi 是针对 Delphi 6 - 2009 原生程序开发版本的。如果你想将 PHPRPC 用于 Delphi.NET,请参见 PHPRPC for .NET 章节的相关内容。 PHPRPC for Delphi 的安装 ...

    JsonRpc.rar_C++ jsonrpc_JSON_JsonRpc.rar_json-rpc _用jsonrpc封装

    3. **JSON-RPC封装**: 你提到的"JsonRpc"可能是你自己编写的C++库,用于封装JSON-RPC通信过程。这样的封装可能包括以下几个部分: - 请求构造:创建符合JSON-RPC规范的请求对象,包含方法名、参数等信息。 - ...

    grpc-java-1.9.0.tar.gz_gRPC-java_java Tcp _谷歌 RPC 框架

    gRPC-java 1.9.0 已发布,gRPC-java 是谷歌 RPC 框架 gRPC 的 Java 实现。gRPC 是一个高性能、开源、通用的 RPC 框架,面向移动和 HTTP/2 设计,是由谷歌发布的首款基于 Protocol Buffers 的 RPC 框架。 gRPC 基于 ...

    Python库 | Flask_JSONRPC-1.0.1-py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:Flask_JSONRPC-1.0.1-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    rpc.rar_phprpc java

    在这个“rpc.rar_phprpc java”压缩包中,我们关注的是PHP与Java之间的RPC通信。PHPRPC是一个轻量级、高效且易于使用的跨语言RPC框架,支持PHP与Java之间的数据交互。 PHPRPC是为了解决PHP和Java之间进行远程调用的...

    RPC.tar.gz_linux rpc_rpc_rpc linux_rpc linux_C

    本资料包“RPC.tar.gz_linux rpc_rpc_rpc linux_rpc linux_C”提供了C语言实现的RPC功能,旨在帮助开发者理解和应用Linux环境下的RPC技术。 首先,让我们深入理解RPC的工作原理。RPC的核心思想是客户端发起一个请求...

    jsonrpc所需jar包

    jsonrpc所需要的jar包,包括jackson-annotations-2.3.0.jar,jackson-core-2.5.4.jar,jackson-databind-2.6.2.jar,jsonrpc4j-1.0.jar

    RPC.rar_java rpc

    在这个“RPC.rar_java rpc”压缩包中,我们可以推测包含的是一个Java实现的RPC框架或者相关的示例代码,用于演示如何通过RPC进行跨机器的文件操作。 首先,我们要理解RPC的基本原理:客户端发起一个远程调用请求,...

    JSON.rar_JSON_JSON-RPC.jar_jsonRPC.J

    "json-rpc.jar"可能是Java实现的JSON-RPC客户端或服务器端库,它允许程序通过网络调用远程服务,就像调用本地函数一样简单。JSON-RPC的请求和响应都是JSON格式,这使得它具有轻量级、易于实现和跨平台的优势。在...

    java_rpc_demo

    (1)用java写的RPC调用的demo。通过这个demo,可以了解RPC的基本原理。 (2)没有用到其他的jar包,java对象和流之间的转换用的是java.io.ObjectInputStream和java.io.ObjectOutputStream。 (3)下载解压,可以...

    ONCRPC.rar_ONCRPC_code rpc_onc_onc rpc

    这个"ONCRPC.rar_ONCRPC_code rpc_onc_onc rpc"文件包含的是关于ONC RPC协议的实现代码,主要针对的是JAVA平台,旨在实现不同编程语言之间的RPC调用。 在RPC(Remote Procedure Call)机制中,客户端可以透明地调用...

    Python库 | aiohttp_json_rpc-0.12.2-py3-none-any.whl

    总结一下,`aiohttp_json_rpc` 是一个基于 Python 3 和 `aiohttp` 的 JSON-RPC 实现库,它提供了一种高效、异步的方式来处理 JSON-RPC 协议。通过这个库,开发者可以方便地创建 JSON-RPC 服务端和客户端,实现远程...

    jsonrpc.rar_jsonrpc

    总结来说,"jsonrpc.rar"可能是一个实现JSON-RPC协议的Java库,它提供了字符到JSON对象的转换功能,并支持JSON-RPC的请求和响应处理。这个库可能广泛应用于需要进行JSON数据交换和远程调用的场景,如Web服务、微服务...

    JSONRPC+JSON+Java

    在Java中实现JSONRPC,通常会使用到一些开源框架,如Json-Rpc或JsonRPC4j等。这些框架提供了一套完整的API,帮助开发者快速构建基于JSONRPC的服务端和客户端。 首先,我们来看JSONRPC的核心概念: 1. **请求...

    HessianCSharp_Test.rar_Hessian java

    3. **Java中的Hessian实现**: 对于Java,有Apache Commons Hessian库,它提供了一套API,允许Java服务暴露可由Hessian客户端调用的远程方法。 4. **接口定义**: 跨语言调用需要定义一致的接口,确保两端(C#客户端...

    phprpc_3.0.2_java,webservice

    3. **Java支持**:在Java环境中使用Phprpc,开发者可以创建服务端和客户端,实现跨应用或跨服务器的数据交换。Phprpc为Java提供了一套API,使得开发者可以轻松地将Java对象和方法封装成远程可调用的服务。 4. **Web...

    jsonrpc是一个基于Java的高性能开源RPC框架

    在Java世界中,JSON-RPC作为一个高性能的开源RPC框架,为分布式系统中的服务调用提供了便利。这个框架允许应用程序通过网络在不同的进程之间传递方法调用,仿佛这些方法是在本地对象上调用一样。 JSON-RPC的核心...

    java 使用json-rpc

    JSON-RPC for Java是一种基于JSON(JavaScript Object Notation)协议的远程过程调用(Remote Procedure Call)框架,它允许客户端通过网络调用服务器上的方法,实现了客户端与服务器端的轻量级通信。本文将详细解释...

Global site tag (gtag.js) - Google Analytics