RPC - 入门

本文的示例代码参考rpc-hprose

目录

HTTP

Server

vim server-http.js
var hprose = require("hprose");
function hello(name) {
    return "Hello " + name + "!";
}
var server = hprose.Server.create("http://0.0.0.0:8080");
server.addFunction(hello);
server.start();

Client

vim client-http.js
var hprose = require("hprose");
var client = hprose.Client.create("http://127.0.0.1:8080/");
var proxy = client.useService();
proxy.hello("world", function (result) {
    console.log(result);
});
  • Test
cnpm i --save hprose

node server-http.js

node client-http.js # Hello world!

关于跨语言RPC框架hprose详细介绍 可以参考hprose

Package

基于Wireshark抓包如下

《RPC - 入门》 rcp-basic-01.png
《RPC - 入门》 rcp-basic-02.png

关于抓包工具Wireshark详细介绍 可以参考Wireshark

TCP

Server

vim server-tcp.js
var hprose = require("hprose");
function hello(name) {
    return "Hello " + name + "!";
}
var server = hprose.Server.create("tcp://0.0.0.0:8080");
server.addFunction(hello);
server.start();

Client

vim client-tcp.js
var hprose = require("hprose");
var client = hprose.Client.create("tcp://127.0.0.1:8080/");
var proxy = client.useService();
proxy.hello("world", function (result) {
    console.log(result);
});
  • Test
cnpm i --save hprose

node server-http.js

node client-http.js # Hello world!

Package

基于Wireshark抓包如下

《RPC - 入门》 rcp-basic-03.png
《RPC - 入门》 rcp-basic-04.png

    原文作者:诺之林
    原文地址: https://www.jianshu.com/p/a72428138165
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞