使用 EndPoint

    在默认的场景下,我们会预埋一些 EndPoint,用户可以对这些东西全部自定义。

    默认预埋的 EndPoint 包括:

    每个 EndPoint 是一个 IPC 服务器,用于接收 Indicator 调用的结果,并进行汇总,最为常用的两个方法就是 和 processQueryResults,定义如下:

    每个 Indicator 是一个 IPC 客户端,可以在不同的进程中初始化,我们使用 pid 作为区分,所以一般来说,一个进程只允许一个同名的 Indicator 存在,在 cluster 模式下,Indicator 就可以以多个的形式通过同一个 group 上报给 EndPoint。

    Indicator 有几个重要的字段,和 EndPoint 类似, 表示对应连接到哪个 EndPoint,而 invoke 方法则是真正的调用执行的地方。

    在 Pandora.js 中,我们提供了一批将内置的 EndPoint 汇聚的数据通过 Http 对外暴露的能力,每一个 EndPoint 都可以有配套的 Resource 资源对外输出,这里的数据格式是通过 和 koa-router 来简单扩展的。

    不同版本的配置可能会有些增减,但是大致的配置如下:

    每个 EndPoint 都有几个通用的配置

    • name {String} 名字,全局唯一就行
    • enabled {Boolean} 是否启用
    • target {IEndPoint} 对应的 EndPoint 类
    • initConfig {Object} 初始化配置

    以上就是 EndPoint 的配置方法。