1、建立介面,該介面類在服務端和客戶端都必須有。
publicinte***ceserverifextendsversionedprotocol
2、在服務端實現介面類
publicclassserverimplimplementsserverif
3、服務端,使用實現的類啟動服務,需要定義監聽的ip位址和埠
server server = rpc.getserver(si,
serveraddress
, serverport
, 10,true,
conf);
server.start();
4、客戶端定義遠端連線
inetsocketaddress sa =newinetsocketaddress(
serveraddress
, serverport);
5、客戶端使用遠端連線,通過介面定義,呼叫服務端具體實現
serverif
si = (serverif) rpc.getproxy(serverif.class,
versionid
, sa,
conf);
returnsi.method(args);
Hadoop維護IPC鏈結
ipc鏈結上長時間沒有發生遠端呼叫,客戶端會傳送乙個心跳訊息給伺服器端,用於維護鏈結。connection的lastactivity用來記錄上次發生ipc通訊的時間。connection.touch方法更新lastactivity為當前時間,在setupiostream和receiverespons...
Hadoop 中 IPC 的原始碼分析
最近開始看 hadoop 的一些原始碼,展開hadoop的原始碼包,各個元件分得比較清楚,於是開始看一下 ipc 的一些原始碼。ipc模組,也就是程序間通訊模組,如果是在不同的機器上,那就可以理解為 rpc 了,也就是遠端呼叫。事實上,hadoop 中的 ipc 也就是基於 rpc 實現的。使用 s...
Hadoop的各個web介面的位址
1 hdfs介面 http potter2 50070 檢視namenode狀態 該埠的定義位於core default.xml中,可以在hdfs site.xml 中修改 如果通過該埠看著這個頁 面,以為著namenode節點 是存活的。1 hdfs頁面 50070 2 yarn的管理介面 808...