您的位置:首页 > 编程语言 > PHP开发

php常见实现远程调用的几种方法-中间件

2017-03-31 09:10 501 查看
<strong>XML-RPC</strong>

XML-RPC大致就是整个过程就是使用XML来进行通信。首先构造一个RPC 服务器端用来处理从RPC客户端传递过来的使用XML封装的请求,并且把处理结果通过XML的形式返回给RPC客户端,客户端就去分析XML获取自己需要的数据。

XML-RPC的服务器端必须有现成的函数提供给客户端调用,并且客户端提交的请求中的函数和方法必须和服务器端的一致,否则将无法获取所需要的结果。服务器端使用xmlrpc_server_create函数产生一个服务器端,然后把需要需要暴露的RPC调用接口进行注册,接受RPC客户端POST过来的XML数据,然后进行处理,处理结果通过XML的形式显示给客户端。

XML-RPC比较简单,出现时间比较早

<strong>SOAP</strong>

简单对象访问协议,简单对象访问协议(SOAP)是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。 SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。

SOAP比较复杂,主要是一些需要稳定、健壮、安全并且复杂交互的时候使用。

<strong>JSON-RPC</strong>

JSON远程方法调用 。类似于XML-RPC,不同之处是使用JSON作为信息交换格式。

<strong>REST</strong>

即REST(Representational State Transfer表述性状态转移)是一种针对网络应用的设计和开发方式,可以降低开发的复杂性,提高系统的可伸缩性。

<strong>ICE</strong>

它是基于SOA(面向服务架构)的思想,将对数据库的操作统一成一个服务,放置于一台服务机上,每个web服务器要对数据库进行操作,就可以直接访问这个提供中间件服务的服务器。

ICE有分为提供服务的一方Server和寻求服务的一方Client,两台机子上都需要安装ICE组件,Client端应该事先知道Server端能提供的服务是什么,有什么格式?

<img src="http://images.cnblogs.com/cnblogs_com/yjf512/201106/201106071837171337.png" />

这就是图中的Proxy Code,在Proxy Code中定义好了类和接口。Server端中接口定义的就是Skeleton,具体实现接口的是Server Application,Server Application可以是C++,java,C#等写的,但是ICE不提供PHP写Server端。http://www.zeroc.com/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 中间件