当我们浏览着关注或者好友的微博时,那些图片和数据不是凭空出现的,而是通过你的客户端向服务器请求后由新浪微博的服务器返回本地所获得,通过数据的解析就能够在客户端上进行显示,甚至是操作。而这些,就是我们通常所说的 Web Service。Web Service 技术是一种通过 Web 协议提供服务,保证不同平台的应用服务可以互操作,为客户端应用提供不同的服务。目前主流的 Web Service 技术有三种:REST、SOAP 和 XML-RPC。现在主要介绍的是 REST Web Service。...
分类:
移动开发 时间:
2014-10-09 15:51:28
阅读次数:
239
1. 使用的实例: package?com.rpc;
import?org.apache.hadoop.ipc.VersionedProtocol;
public?interface??MyProtocol?extends?VersionedProtocol{
public?static?final?long?versionID=1L;
String?...
分类:
其他好文 时间:
2014-10-09 00:27:27
阅读次数:
292
简介RPC(Remote Procedure Call,远程过程调用)是建立在Socket之上的,出于一种类比的愿望,在一台机器上运行的主程序,可以调用另一台机器上准备好的子程序,就像LPC(本地过程调用).越底层,代码越复杂、灵活性越高、效率越高;越上层,抽象封装的越好、代码越简单、效率越差。So...
分类:
其他好文 时间:
2014-10-08 18:28:35
阅读次数:
333
Reduce计算分为若干阶段1. copy(或者叫shuffle)阶段和merge阶段并行之前Map产生的结果被存放在本地磁盘上,这时需要从reduce节点将数据从map节点复制过来。放得下进内存,比较大的则写到本地磁盘。同时,有两个线程对已经获得的内存中和磁盘上的数据进行merge操作。具体细节是:通过RPC调用询问task tracker已经完成的map task列表,shuffle(洗牌)是...
分类:
其他好文 时间:
2014-10-04 15:41:56
阅读次数:
240
xml、json的优势,在与可以实现树形数据的存储;可以用来表达各种形式的信息;c/cpp的结构体,也可以用来保存各种形式的信息,在schema这一层,两者是等价的;而pb、thrift、avro-rpc等,都是使用紧凑的结构体来表达非紧凑的树形信息;这样,数据传输量更小,更快;所以,在不考虑资源占...
分类:
Web程序 时间:
2014-10-03 18:52:15
阅读次数:
241
opendaylight作为sdn主要开源项目,采用osgi框架,已经得到很多厂商的支持。氦版本也发布在即。
下面介绍一下在odl中如何实现rpc. odl使用yang作为model模型定义文件,yang规范最先被用于netconf,后来restconf在http协议上实现restful,而采用yang定义模型。
实现分2步:1.采用yang定义模型,实现api jar包。2 实现rpc se...
分类:
其他好文 时间:
2014-10-03 17:11:44
阅读次数:
565
libco是腾讯开源的一个协程库,主要应用于微信后台RPC框架,下面我们从为什么使用协程、如何实现协程、libco使用等方面了解协程和libco。why协程为什么使用协程,我们先从server框架的实现说起,对于client-server的架构,server最简单的实现:while(1) {acce...
分类:
其他好文 时间:
2014-10-02 20:24:23
阅读次数:
472
JSON-RPC 2.0规范
起源日期:
2010-03-26(基于2009-05-24的版本)
修正:
2013-01-04
作者:
JSON-RPC 工作组
1 概述
JSON-RPC是一个无状态的、轻量级的远程过程调用(RPC)协议。本规范主要围绕它的处理方式定义了几个数据结构和规则。这个概念可用于在同一进程中、套接字或HTTP之间、或其他很多...
分类:
Web程序 时间:
2014-10-01 14:50:01
阅读次数:
258
RPC作为一种特殊的网络编程,会封装一层传输层来支持底层的网络通信。Thrift使用了Transport来封装传输层,但Transport不仅仅是底层网络传输,它还是上层流的封装。
关于Transport的设计,从架构上看,IO流和网络流都是IO的范畴,用一个统一的接口来抽象并无不可,但是个人感觉看Thrift的代码时,都用的Transport来表示流,不知道是普通IO流还是底层的网络流。还不如...
分类:
其他好文 时间:
2014-09-30 17:15:29
阅读次数:
191
FrameBuffer是Thrift NIO服务器端的一个核心组件,它一方面承担了NIO编程中的缓冲区的功能,另一方面还承担了RPC方法调用的职责。
FrameBufferState定义了FrameBuffer作为缓冲区的读写状态
private enum FrameBufferState {
// in the midst of reading the fra...
分类:
其他好文 时间:
2014-09-30 16:21:19
阅读次数:
366