应用与数据集成平台 ROMA CONNECT-配置目标端数据信息:RabbitMQ
RabbitMQ
返回页首
任务的“集成模式”为“定时”或“实时”时,可以选择RabbitMQ作为目标端数据源。
- 在创建任务页面中配置目标端信息。
表26 目标端RabbitMQ信息 参数
配置说明
目标端实例
配置为当前正在使用的ROMA Connect实例,源端实例配置后目标端自动关联,无需配置。
目标端集成应用
选择RabbitMQ数据源所属的集成应用,在接入数据源时已配置。
目标端数据类型
选择“RabbitMQ”。
数据源名称
选择接入数据源中已配置的RabbitMQ数据源。
是否创建新队列
选择是否在源端RabbitMQ数据源创建一个新队列。
- 选择是,表示创建一个新队列,并把待集成数据发送到该队列。
- 选择否,表示把待集成数据发送到已有队列。
交换方式
选择RabbitMQ数据源中,交换器将消息转发到队列的路由方式。若“是否创建新队列”选择“是”,则选择新队列的交换方式;若“是否创建新队列”选择“否”,则选择已有目标队列一致的交换方式。
- Direct:若消息的路由关键字与队列完全匹配,则消息会转发到队列。
- Topic:若消息的路由关键字与队列模糊匹配,则消息会转发到队列。
- Fanout:所有消息都会转发到队列。
- Headers:若消息的Headers属性与队列完全匹配,则消息会转发到队列。
交换机名称
填写RabbitMQ数据源的交换器名称。若“是否创建新队列”选择“是”,则配置新队列的交换器名称;若“是否创建新队列”选择“否”,则配置已有目标队列一致的交换器名称。
路由关键字
仅当“交换方式”选择“Direct”或“Topic”时需要配置。
RabbitMQ把路由关键字作为判断条件,符合条件的消息将转发到队列。若“是否创建新队列”选择“是”,则配置新队列的路由关键字;若“是否创建新队列”选择“否”,则配置已有目标队列一致的路由关键字。
消息参数
仅当“交换方式”选择“Headers”时需要配置。
RabbitMQ把Headers作为判断条件,符合条件的消息将转发到新队列。若“是否创建新队列”选择“是”,则配置新队列的Headers键值对;若“是否创建新队列”选择“否”,则配置已有目标队列一致的Headers键值对。
队列名称
仅当“是否创建新队列”选择“是”时需要配置。
填写新队列的名称,自定义。
自动删除
当没有客户端连接队列时,队列是否自动删除。
持久化
队列中的消息是否持久化保存。
元数据
定义写入到目标端的JSON格式数据中,每一个底层key-value型数据元素。源端有多少个字段需要集成,则目标端需要定义相同个数的元数据。
- 别名:对元数据的自定义名称。
- 类型:元数据的数据类型,需要与源端数据中对应字段的数据类型一致。
- 解析路径:元数据的完整路径,具体请参见元数据解析路径配置说明。
元数据解析路径配置说明:
- JSON格式数据中不含数组
如以下写入目标端的JSON格式数据,元素a的完整路径定义为a,元素b的完整路径为a.b,元素c的完整路径为a.b.c,元素d的完整路径为a.b.d,元素c和d为底层数据元素。
此场景下,元素c的解析路径需要设置为a.b.c,元素d的解析路径需设置为a.b.d。
{ "a": { "b": { "c": "xx", "d": "xx" } } }
- JSON格式数据中含数组
如以下写入目标端的JSON格式数据,元素a的完整路径定义为a,元素b的完整路径为a.b,元素c的完整路径为a.b[i].c,元素d的完整路径为a.b[i].d。元素c和d为底层数据元素。
此场景下,元素c的解析路径需要设置为a.b[i].c,元素d的解析路径需设置为a.b[i].d。
{ "a": { "b": [{ "c": "xx", "d": "xx" }, { "c": "yy", "d": "yy" } ] } }
以上面JSON格式数据中不含数组的样例为例,目标端为RabbitMQ的配置示例如下图所示。
图12 RabbitMQ配置示例
- 完成目标端信息配置后,继续进行下一部分配置,配置数据映射规则。