06
2

PHPRPC高性能远程过程调用协议介绍

最近在弄一个项目的API部分,想法很简单就是把数组什么序列化之后传输.今天搜索”php序列化”因为要考虑到以后其他客户端程序调用API的问题.无意中发现了这个PHPRPC.靠!这不就是我想要的东西么?还浪费了我一周,写好了大概的API接口,简单是简单了点,而且只能支持PHP自建调用.还是用成熟的东西好,再研究研究这个PHPRPC吧.

PHPRPC官方网站:http://www.phprpc.org/zh_CN/

下面是PHPRPC官方介绍:

PHPRPC 是一个轻型的、安全的、跨网际的、跨语言的、跨平台的、跨环境的、跨域的、支持复杂对象传输的、支持引用参数传递的、支持内容输出重定向的、支持分级错误处理的、支持会话的、面向服务的高性能远程过程调用协议。

目前该协议的最新版本为 3.0。该版本目前已有以下几种语言的实现:

  • ASP:提供 JScript 和 VBScript 两种语言的支持。
  • ActionScript:提供 ActionScript 2.0 和 ActionScript 3.0 两个版本的支持。
  • Delphi/C++Builder/Kylix:提供 Delphi/C++Builder 6.0-2009 和 Kylix 客户端的支持,不但可以支持 Win32 原生程序开发,而且还支持 Linux 程序开发。
  • Java:支持 JDK 1.2 以上的所有版本,它还支持 Google Android 开发包。另外,它还有单独的 J2ME 版本,支持 CLDC-1.1 和 MIDP-1.0
  • JavaScript:提供两个版本的实现,一个使用纯 Javascript 实现,另一个需要调用一个 swf 文件,两个版本都支持跨域的远程过程调用,但是使用 swf 的版本不限制参数长度,并且有更好的安全控制机制。这两个版本已经通过完整测试的浏览器包括 IE 5+Netscape 7+FirefoxMozillaOperaSafariEpiphanyCamino 与 Konqueror。并且纯 JavaScript 版本还通过了 Pocket IEOpera MiniOpera MobileiPhoneAndroid 等手持设备浏览器的测试。
  • .NET:支持 .NET 框架下所有的语言(如 C#VB.NETVC.NETDelphi.NET 等),并且支持目前所有版本的 .NET Framework 和 .NET Compact Framework,当然它也支持 Mono。最新版本增加了对 SilverLight 2.0 的支持。
  • PHP:支持 PHP4 与 PHP5,同样支持正处于开发阶段的 PHP6
  • Python:支持 Python 2.4、2.5、2.6,而且支持在 Google App Engine 上应用。
  • Ruby:该版本支持 Ruby 1.8.5 及其更高版本。服务器除了支持以 cgifcgiscgilsapi 方式运行外,还支持以独立服务器 ( mongrelthinebb 或 webrick ) 方式运行。
  • Perl:目前该版本尚不成熟,有待完善。
  • Lazarus(Free Pascal):移植自 Delphi 版本, 需要 Indy for Lazarus 支持。

其中 ASP、.NET、Java、Ruby、Python 和 PHP 版本除了提供客户端实现外,还提供了服务器端实现。

附:

PHP 序列化与 .NET 中其它方式序列化的效率对比

http://edu.codepub.com/2009/0101/809.php

相关日志

当前没有评论!

第一个在本文留言。

发表评论

名字(必须)
邮箱(必须),(永不被公布)
网址(建议)

字体为 粗体 是必填项目,邮箱地址 永远不会 公布。

允许部分 HTML 代码:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
URLs(网站链接)必须完整有效 (比如: http://www.vpnall.com),所有标签都必须完整的关闭。

超出部分系统将会自动分段及换行。

请保证评论内容是与日志或 Blog 内容相关的,灌水、攻击性或不恰当的评论 可能 会被编辑或删除。