本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

mu-delta-notifier Docker 镜像下载 - 轩辕镜像

mu-delta-notifier 镜像详细信息和使用指南

mu-delta-notifier 镜像标签列表和版本信息

mu-delta-notifier 镜像拉取命令和加速下载

mu-delta-notifier 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

mu-delta-notifier
semtech/mu-delta-notifier

mu-delta-notifier 镜像详细信息

mu-delta-notifier 镜像标签列表

mu-delta-notifier 镜像使用说明

mu-delta-notifier 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

接收来自mu-authorization的原始delta消息,并将其转发给mu.semte.ch生态系统中感兴趣的微服务,实现变更通知传递。
0 次下载activesemtech镜像

mu-delta-notifier 镜像详细说明

mu-delta-notifier 使用指南

mu-delta-notifier 配置说明

mu-delta-notifier 官方文档

Delta Notifier

镜像概述和主要用途

该组件接收来自mu-authorization的原始delta消息,并将其转发给感兴趣的实体,是mu.semte.ch微服务架构中实现变更通知传递的关键组件。

核心功能和特性

  • 消息转发:接收mu-authorization发送的delta变更消息并转发至指定服务
  • 灵活配置:支持通过规则文件自定义匹配模式和转发目标
  • 多格式支持:提供多种delta消息格式,适配不同服务需求
  • 调试能力:通过环境变量启用详细日志,便于排查配置和通信问题

使用场景和适用范围

适用于mu.semte.ch微服务生态系统中需感知数据变更的场景:

  • 跨服务数据同步触发
  • 业务事件通知(如资源创建/修改/删除)
  • 分布式系统状态一致性维护

使用方法和配置说明

在mu-semtech栈中连接mu-delta-notifier

delta-notifier需接收mu-authorization的消息并发送至其他服务。因直接使用docker-compose的link选项会形成循环依赖(some-service -> mu-authorization -> delta-notifier -> some-service),建议在docker-compose注释中记录消费delta服务的服务,确保应用流程清晰。

配置mu-authorization与mu-delta-notifier的详细信息见mu-authorization文档。当前可在mu-authorization的配置目录(通常为config/authorization/)添加delta.ex文件,内容如下:

elixir
defmodule Delta.Config do
  def targets do
    [ "[***]" ]
  end
end

将delta-notifier包含到你的栈中

docker-compose中默认包含delta-notifier的配置如下:

yml
  deltanotifier:
    image: semtech/mu-delta-notifier
    volumes:
      - ./config/delta:/config

接收delta通知

接收服务需通过config/delta/rules.js配置。该文件格式可能迭代,但核心目标是使消费服务能一致接收特定格式消息,通过resourceFormat键选择格式。

配置示例

以下是连接资源服务的config/delta/rules.js示例:

js
export default [
  {
    match: {
      // 元素格式为 {subject,predicate,object}
      // predicate: { type: "uri", value: "[***]" }
    },
    callback: {
      url: "[***]", method: "POST"
    },
    options: {
      resourceFormat: "v0.0.0-genesis",
      gracePeriod: 1000,
      ignoreFromSelf: true
    }
  }
]

配置参数说明

导出的数组包含多个规则定义,每个定义包含:

  • match:消息匹配规则(指定键需匹配,未指定键忽略)
    • subject:匹配主语(可指定typevalue
    • predicate:匹配谓语(可指定typevalue
    • object:匹配宾语(可指定typevalue
  • callback:通知目标配置
    • url:接收通知的服务URL
    • method:发送通知的HTTP方法
  • options:转发选项
    • resourceFormat:消息格式版本(不可删除字段,可按需过滤)
    • gracePeriod:延迟发送时间(毫秒),用于合并短时间内的变更
    • ignoreFromSelf:是否忽略目标服务自身发起的变更(基于主机名判断)

Delta格式

通过options.resourceFormat指定消息格式,版本需完全匹配字符串。

v0.0.1

最新格式,未来可能扩展授权等功能。值编码遵循json-sparql规范RDF术语编码。示例:

json
[
  { 
    "inserts": [
      {
        "subject": { "type": "uri", "value": "[***]" },
        "predicate": { "type": "uri", "value": "[***]" },
        "object": { "type": "uri", "value": "[***]" }
      },
      {
        "subject": { "type": "uri", "value": "[***]" },
        "predicate": { "type": "uri", "value": "[***]" },
        "object": { "type": "literal", "value": "[***]", "datatype": "[***]" }
      }
    ],
    "deletes": [] 
  }
]

v0.0.0-genesis

初始PoC格式,示例:

json
{ 
  "delta": {
    "inserts": [
      {
        "s": "[***]",
        "p": "[***]",
        "o": "[***]"
      }
    ],
    "deletes": [] 
  }
}

false或undefined

任何假值不会向消费服务发送变更三元组,适用于仅需触发数据库状态检查的场景。

调试

通过设置环境变量启用调试日志:

  • DEBUG_DELTA_SEND:记录发送给客户端的所有delta消息
  • DEBUG_DELTA_MATCH:记录每个目标块的检查事件
  • DEBUG_TRIPLE_MATCHES_SPEC:详细记录匹配规则的三元组,排查请求未发送问题

扩展

鼓励社区贡献以完善服务功能。可Fork仓库进行实验,通过issue或PR分享结果;如需讨论扩展方向,欢迎提交issue。

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"