kitejs
说明
kitejs 提供统一访问服务的 client,支持 Http、RPC(thrift) 协议,提供多种编解码方式(正在支持)。 kitejs 集成寻址、支持负载均衡策略
使用
首先进行安装
npm install kitejs --save
使用方法
// for HTTPconst kite = ; var client = host: '127.0.0.1' port: 8080 protocol: 'HTTP' log: logFile: __dirname + '/client.log' logId: Date ; // use request componentclient;
// for THRIFTconst kite = ; var client = host: '127.0.0.1' port: 8080 protocol: 'THRIFT' log: logFile: __dirname + '/client.log' logId: Date ; client ;
// for CONSULconst kite = ; var client = service: 'ies.fe.mis' searchHostType: 'CONSUL' log: logFile: __dirname + '/client.log' logId: Date ; client;
接口
Client(options) 客户端类
可以方便的创建一个 Client 用于请求。。。
Options
-
protocol 访问协议,HTTP \ THRIFT,默认HTTP
-
searchHostType 寻址方式 LOCAL 或者 CONSUL,默认LOCAL
-
service consul 时提供 PSM 信息
-
host 服务端域名信息
-
port 服务端端口信息
-
timeout 访问超时时间
1s
100ms
or1
默认为秒 -
address 更人性化的地址设置,比如
127.0.0.1:10220
-
consul 提供 consul 服务地址信息
-
retry 重试次数,当网络不稳定时,需要重试
2
-
transport 选择的thrift协议。FRAMED | BUFFERED
consul:host: '127.0.0.1'port: 2280
request
发起请求,获取服务端数据
Client..request(options?, cb);
参数
-
options 可选,主要用于 HTTP 填写 PATH、HEADERS 等信息
request
的参数
-
cb
- err 如果发生错误,err 为 Error 对象实例,如果未发生错误为
null
- data
- protocol=THRIFT 时,返回 Service 对象
- protocol=HTTP 时,直接返回请求 response 的内容
- conn 可选参数,如果 THRIFT 时,返回请求 connection ,可以方便 Service 获取到数据后关闭连接。
- err 如果发生错误,err 为 Error 对象实例,如果未发生错误为
loadService
加载 Thrift Service
Client.参数
client// return client Object instance.
- Thrift Service 的 path,框架会 load
xxService.js
并注册入 Thrift 请求框架
返回
- Client 对象实例