文档章节

RPC实验

Zero零_度
 Zero零_度
发布于 2014/12/21 20:16
字数 140
阅读 325
收藏 3
rpc
package com.rpc;
import java.io.IOException;
import org.apache.hadoop.ipc.VersionedProtocol;
public interface MyRPCProtocol extends VersionedProtocol {
 public static final long versionID = 4L;
 
 String hello(String name);
}
class MyRPCProtocolImpl implements MyRPCProtocol {
 
 @Override
 public long getProtocolVersion(String arg0, long arg1) throws IOException {
  return MyRPCProtocol.versionID;
 }
 @Override
 public String hello(String name) {
  return "hello " + name;
 }
 
}
package com.rpc;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.ipc.RPC;
import org.apache.hadoop.ipc.RPC.Server;
public class MyServer {
 
 public static int PORT = 3333;
 
 public static void main(String[] args) throws Exception {
  final Server server = RPC.getServer(new MyRPCProtocolImpl(), "localhost", MyServer.PORT, new Configuration());
  server.start();
 }
 
}
package com.rpc;
import java.net.InetSocketAddress;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.ipc.RPC;
public class MyClient {
 
 public static void main(String[] args) throws Exception {
  final InetSocketAddress inetSocketAddress = new InetSocketAddress("localhost", MyServer.PORT);
  MyRPCProtocol rpc = (MyRPCProtocol)RPC.getProxy(MyRPCProtocol.class, MyRPCProtocol.versionID, inetSocketAddress, new Configuration());
  String str = rpc.hello("习大大");
  System.out.println(str);
  RPC.stopProxy(rpc);
 }
 
}

依赖包:hadoop-core-1.2.1、commons-configuration-1.6、commons-lang-2.4、commons-logging-1.1.1

© 著作权归作者所有

共有 人打赏支持
Zero零_度
粉丝 68
博文 1246
码字总数 252959
作品 0
程序员
RPC框架实践之:Apache Thrift

一、概述 RPC(Remote Procedure Call)即 远程过程调用,说的这么抽象,其实简化理解就是一个节点如何请求另一节点所提供的服务。在文章 微服务调用链追踪中心搭建 一文中模拟出来的调用链:...

CodeSheep
05/14
0
0
新课上线|Python实现图片拼接与混合、XML-RPC文件共享程序等

关注「实验楼」,每天分享一个项目教程 最近又上线了哪些新课程?快来看看吧~ 会 员 课 一、《Python3 实现图片拼接与混合》 课程来源:selfim 课程简介:本课程主要是利用 Python 的第三方...

moy37rqw1jarn33bgzk
05/12
0
0
以太坊—JSON RPC API

Geth 使用JSON数据格式, JSON-RPC协议作为客户端和网络进行交互的方法。 Geth 1.4 的 pub/sub 是实验性质的, 同样, Partity 1.6 也是。 JavaScript API 使用web3.js和etherenum节点交互时...

十一月不远
07/23
0
0
ISA2006发布Exchange服务器 RPC OVER HTTPS

ISA2006发布Exchange服务器 RPC OVER HTTPS 实验拓扑图 计算机都是windows sp1 计算机都信任Denver颁发的证书 1 在Denver上 安装http代理rpc,让Exchange有解封装能力 在Denver上开始——程序...

余二五
2017/11/22
0
0
mysql分批次插入VS一次性插入

由于临近考试,需要从前端页面将整个学校的学生信息通过Excel导入到数据库中。导入3万数据,先是进行各种数据校验,然后才进行入库操作。ito401三张表,云平台一张表。结果运行不到一半页面就...

qq_26545305
2017/12/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

cacti监控安装

cacti是用PHP实现的一个软件,它用snmp服务获取数据,然后用rrdtool存储和更新数据,并生成图表展示。比较适合用于交换机、路由器的网络监控,插件众多,可图示化显示网络状况。 cacti官方推...

hiwill
20分钟前
1
0
shell特殊符号、cut、sort、uniq、wc、tee、tr、split命令

10月15日任务 8.10 shell特殊符号cut命令 8.11 sort_wc_uniq命令 8.12 tee_tr_split命令 8.13 shell特殊符号下 cut 命令 cut作用:截取字符串 用法如下:cat /etc/passwd |head -2 |cut -d ...

hhpuppy
49分钟前
1
0
Springboot实现filter拦截token验证和跨域

背景 web验证授权合法的一般分为下面几种 1使用session作为验证合法用户访问的验证方式 使用自己实现的token 使用OCA标准 在使用API接口授权验证时,token是自定义的方式实现起来不需要引入其...

funnymin
今天
3
0
linux使用ntfs-3g操作ntfs格式硬盘

Linux内核目前只支持对微软NTFS文件系统的读取。 NTFS-3G 是微软 NTFS 文件系统的一个开源实现,同时支持读和写。NTFS-3G 开发者使用 FUSE 文件系统来辅助开发,同时对可移植性有益。 安装 ...

linuxprobe16
今天
2
0
kubeadm部署kubernetes集群

一、环境要求 这里使用RHEL7.5 master、etcd:192.168.10.101,主机名:master node1:192.168.10.103,主机名:node1 node2:192.168.10.104,主机名:node2 所有机子能基于主机名通信,编辑...

人在艹木中
今天
15
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部