RPC(Remote Procedure Call Protocol,远程过程调用协议),可以使本机像调用本地类一样调用远程服务,只需要提供一个接口给调用端,就可以使用RPC工具类拿到远程服务代理,进而调用远程服务(发布的RPC服务)。关于RPC的具体介绍可以参见知乎上的回答(https://www.zhihu.com/question/25536695),本文仅介绍怎么使用Hadoop中的RPC工具类来实现RPC的远程过程调用。
以下是远端代码:
package sempp.lsl.hadoop.rpc;
/**
* Remote interface 远程服务接口设计
* @author lsl
*/
public interface LoginServiceInterface {
public static final long versionID=1L;
public String login(String userName,String passWord);
}
package sempp.lsl.hadoop.rpc;
public class LoginServiceImpl implements LoginServiceInterface {
/**
* Remote Procedure 远程服务接口的具体实现
*/
public String login(String userName, String passWord) {
return userName +" login success";
}
}
package sempp.lsl.hadoop.rpc;