码迷,mamicode.com
首页 > 其他好文 > 详细

RPC实验

时间:2014-12-21 22:17:24      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

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

RPC实验

标签:

原文地址:http://my.oschina.net/sniperLi/blog/359001

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!