1.0.4 • Published 2 years ago

arkreen-redis-mq v1.0.4

Weekly downloads
-
License
apache 2.0
Repository
github
Last release
2 years ago

xenon-jsonrpc-client

采用redis消息队列 xstream

install

yarn add arkreen-redis-mq -D

Usage

typescript:

import {JsonRpcClient} from "arkreen-redis-mq"
import {getLogger} from 'log4js'
const logger = getLogger("out")


try{
    const options={
        //服务名称
        serviceName:'xxx',
        //指定url地址,如果指定了该值,这不会走nacos的负载均衡器,直接调用url所指定的地址
        //url:'http://localhost:9501', 
        // 接口的path路径,默认值为"/"
        path:'v1', 
        // 当需要走nacos的负载均衡器时,需要写下面的代码,该代码是通过负载均衡器获得一个
        // 可访问的url地址
        getHost:(serviceName:string)=>{
            const instancesRobin=config.nacosInstances[serviceName]
            if(!instancesRobin){
                return null
            }
            const host=instancesRobin.pick()
            return host
        },
        // logger 日志输出, 如log4js
        logger:logger,
        // 全局配置变量,和nacos所使用的变量为同一个对象
        config:config 
    }

    // 声明对象,一个serviceName代表一个服务,如果有多个不同的服务,需要定义个多实例对象,
    // 每个实例对象只能访问自己的数据资源
    const jsonRpcClient=  new JsonRpcClient(options)

    //调用示例的参数
    var param = {
        "keyId": 'xxxxxx',
        "salt": '',
        "info": 'dddddddddddddddddddddddddddddddddddddddd',
        "length": 16
    }
    //调用请求方法
    //  第一个参数为 method
    //  第二个参数为 需要请求的params
    const res=await jsonRpcClient.request('xxxxxxx',param)
    
    //异步返回调用结果
    logger.info(JSON.stringify(res))
}catch (e){
    //输出异常信息
    logger.error(e) 
}

javascript:

const {JsonRpcClient} = require("xenon-jsonrpc-client");
var log4js = require("log4js")
const logger = log4js.getLogger("out")



try{
    const options={
        //服务名称
        serviceName:'xxx',
        //指定url地址,如果指定了该值,这不会走nacos的负载均衡器,直接调用url所指定的地址
        //url:'http://localhost:9501', 
        // 接口的path路径,默认值为"/"
        path:'v1',
        // 当需要走nacos的负载均衡器时,需要写下面的代码,该代码是通过负载均衡器获得一个
        // 可访问的url地址
        getHost:(serviceName:string)=>{
            const instancesRobin=config.nacosInstances[serviceName]
            if(!instancesRobin){
                return null
            }
            const host=instancesRobin.pick()
            return host
        },
        // logger 日志输出, 如log4js
        logger:logger,
        // 全局配置变量,和nacos所使用的变量为同一个对象
        config:config 
    }

    // 声明对象,一个serviceName代表一个服务,如果有多个不同的服务,需要定义个多实例对象,
    // 每个实例对象只能访问自己的数据资源
    const jsonRpcClient=  new JsonRpcClient(options)

    //调用示例的参数
    var param = {
        "keyId": 'xxxxx',
        "salt": '',
        "info": 'dddddddddddddddddddddddddddddddddddddddd',
        "length": 16
    }
    //调用请求方法
    //  第一个参数为 method
    //  第二个参数为 需要请求的params
    const res=await jsonRpcClient.request('xxxxxxx',param)

    //异步返回调用结果
    logger.info(JSON.stringify(res))
}catch (e){
    //输出异常信息
    logger.error(e) 
}
1.0.4

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.3

2 years ago

1.0.0

2 years ago