1.0.7 • Published 4 years ago

egg-uki-grpc v1.0.7

Weekly downloads
2
License
MIT
Repository
github
Last release
4 years ago

egg-uki-grpc

NPM version build status Test coverage David deps Known Vulnerabilities npm download

依赖说明

依赖的 egg 版本

egg-uki-grpc 版本egg 1.x
1.x😁
0.x

依赖的插件

grpc jeager

开启插件

// config/plugin.js
exports.ukiGrpc = {
  enable: true,
  package: 'egg-uki-grpc',
};

使用场景

    syntax = "proto3";
    package proto;
    //下方的引入需要删除
    // import "google/api/annotations.proto";
    message Ping {
        string value = 1;
        string age = 2;
    }

    message Post {
        string name = 1;
        string age = 2;
    }
    service Demo {
        rpc GetPing (Ping) returns (Ping) {
          //下方的方法需要删除
          // option (google.api.http) = {
          //   get: "/qa/get"
          // };
        }
    }

特别注意:

  • 因为grpc在go使用的一些特殊需要,会有一些我们不需要且无法兼容的内容, 这些内容需要我们在复制时删除,如上图proto中的两个注释

proto文件如上,通过下方代码可以使用如下方式调用grpc。 调用方法封装为promise

  const result= await ctx.grpcInvoker('demo', 'Demo', 'getPing', { data: { value: '3333' } })
  • demo : server名
  • Demo : service名
  • getPing : rpc方法名 无论原文件是否大小写 第一个字母一律小写
  • data : 数据内容
  • opts : 默认不需要,当有对某个接口有特殊的超时需求时可以设置 opts= {timeout:10000} 即设置这次请求超时时间为10s

详细配置

请到 config/config.default.js 查看详细配置项说明。

exports.ukiGrpc = {
    clients: {
        //server名
        demo: { 
            file: 'app/proto/demo.proto', //具体的文件地址
            //TODO:可能需要一些配置
            clientOptions: {

            },
            endpoint: 'localhost:50051', //grpc服务的连接地址
            timeout: 5000, //超时时间
        },
    },
};
//链路追踪的配置
exports.jaeger = {
    serviceName: 'service', //当前服务的名字
    sampler: {
        type: 'const', 
        param: 1,
    },
    reporter: {
        collectorEndpoint: 'http://127.0.0.1:14268/api/traces', //链路地址  线上使用下方地址
    },
}

单元测试

提问交流

License

MIT

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago

0.1.4

5 years ago

0.1.3

5 years ago

0.1.2

5 years ago

0.1.1

5 years ago

0.0.9

5 years ago

0.0.8

5 years ago

0.0.7

5 years ago

0.0.6

5 years ago

0.0.5

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago