我的编程空间,编程开发者的网络收藏夹
学习永远不晚

第二章 什么是通道?

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

第二章 什么是通道?

本章主要介绍Mirth Connect开发框架,讲解运行的各个阶段,请大家仔细研读、理解,对后续章节帮助是很大的。开发者把前端与服务分开运行,服务框架集成了很多流行的服务及协议,从中我们也可以看出开发的大致原理。本章涉及到的知识点需要了解一些的,比如SOAP

第二章 什么是通道?

 

 

通道是Mirth Connect 的重要组成部分,被看做是一对多的一种单向通道,其通道组件是解耦的,在两个应用或多个应用之间传输医疗数据。Mirth Connect 能把长消息任务分割成小消息任务,其可靠性、灵活性、高性能得到保证。
第二章 什么是通道?
 

图2-1 Mirth Connect抽象通道架构

通道架构组成:由源、通道、目标组成,其中通道包括过滤组件和转换组件。

创建一个通道需要满足如下特点:

      ● 源连接器类型,用于读取数据。(Source)

      ● 目标连接器类型,用于发送数据。(Destination)

      ● 入站消息格式。(inbound)

      ● 出站消息格式。(outbound)

      ● 传输(在入站和出站之间有个映射表)

 

什么是连接器(Connector)

连接器就是一个消息的端点,是Mirth Connect之间或与外部应用之间通讯的一种特殊协议。

支持的连接器列表:

      ● TCP/MLLP

      ● 数据库(MySQL,PostgreSQL,ORACLE,SQLServer,ODBC)

      ● 文件(本地文件系统和网络共享)

      ● PDF RTF文档

      ● JMS

      ● HTTP(免费版HTTPS协议不支持)

      ● SMTP

      ● SOAP(超HTTP)

收到数据的连接器被称为Reader(读取者),例如MLLP Reader;发送数据的连接器被称为Writer(写入者),例如Database Writer。

 

过滤器(filter)

现实世界中,许多应用之间互联,一个通道可能从许多源接收消息,然后这些消息根据消息的类型或条件,需要分门别类的处理。

有两种方法可以解决上述问题:过滤器或路由器。

路由器最关键的优势是根据唯一的位置决定消息到达目的地的条件。

过滤器是Mirth Connect处理消息的主要机制,根据消息的属性(段和元素)决定对消息的处理情况,过滤器从消息队列中检测消息的属性,而消息不会从消息队列中删除,如果本过滤器没有校验通过,原封不动的返回给消息队列,以便此消息用于其它的过滤器进行处理。

如果处理的消息类型很多,可以建立多个独立的到目标的通道,相互之间可以建立多个过滤器进行消息的处理。

 

转换器(Transformer)

许多情况下,遗留系统、客户应用和第三方应用,彼此之间需要根据数据模型进行消息的发送,尤其有特殊格式要求的数据系统。当新的商业需求提出一个唯一标准的时候,我们就需要把其他系统数据格式转成新系统要求的数据标准,传统方法处理起来即复杂又困难,更难于维护。

那么,对这些不同格式要求的消息,怎么进行数据互联呢?Mirth Connect提供了消息转换器来解决这类问题。通过Transformer,接收方得到了它理解的消息,变成自己的内部使用的数据格式。

Transformer支持的转换器类型:

      ● Message Builder 把入站消息片段映射成出站消息片段。

      ● Mapper 把入站消息片段映射成Mirth Connect 内部变量,这些变量在              以后会被用到。

      ● External Script 从名字上就能猜到,利用外部的javascript脚本进行消                   息的转换或映射数据。

      ● XSLT Step 就是个XSL转换工具

      ● JavaScript 和External Script一样,灵活使用。在本教程中有许多地方                 用到了JavaScript,Java代码也被用到了。

 

通道脚本执行的阶段

通道还支持脚本特性,增强消息的处理逻辑,适用于管道本身及所有传递的消息。

这些脚本的名字及含义如下:

● Deploy 部署脚本,Mirth Connect Server启动的时候或通道重新部署的时候

   启动这部分的脚本.

● Attachment 附件脚本,以本地的格式处理消息并允许抽取一部分消息作为

   附件存储起来,或者是不可避免的要修改消息。

● Preprocessor 预处理脚本,脚本还允许在Mirth connect开始将其转换为内

   部格式(即XML)之前以本机格式处理每个消息。

● Filter & Transformer 过滤器和转换器,是我们处理入站和出站消息的主要

   地方。

● Response 应答脚本,从名字上看出,就是处理目标发送的应答信息。

● Postprocessor 后处理器脚本,消息成功发送后执行的脚本。

● Undeploy 反部署脚本,Mirth Connect Server每次停止服务的时候调用,比

   如释放通道程序占用的内存。

 

脚本的执行顺序如下:

      1. Global Deploy script 全局部署

      2. Deploy 部署

      3. Attachment script 附件脚本

      4. Global Preprocessor script 全局预处理脚本

      5. Preprocessor script 预处理脚本

      6. Source connector Filters script 源连接器过滤器脚本

      7. Source connector Transformer script or mapping 源连接器转换器脚本或

     映射

      8. Destination 1 connector Filters script目标1连接器过滤器脚本

      9. Destination 1 connector Transformer script or mapping 目标1连接器转

     换脚本或映射

      10. Destination N connector Filters script目标N连接器过滤器脚本

      11. Destination N connector Transformer script or mapping 目标N连接器

      转换脚本或映射

      12. Response 1 Transformer script or mapping 应答1转换脚本或映射

      13. Response N Transformer script or mapping 应答N转换脚本或映射

      14. Postprocessor script 后处理器脚本

      15. Global Postprocessor script 全局后处理器脚本

      16. Undeploy 反部署

      17. Global Undeploy script 全局反部署脚本

 

Deploy、Global Deploy每次管道重新部署启动一次,Undeploy、Global Undeploy也是一样,其他的每次发送接收消息都要执行一遍。注意Global Preprocessor在Preprocessor之前执行,Global Postprocessor在Postprocessor之后执行。

通道在序列里操作,首先被执行的是第一个通道的Attachment,而第一个通道Postprocessor是最后执行,让我们看看序列通道执行的情况如下图:
第二章 什么是通道?
 

图2-2 脚本执行序列

这个序列有三个通道串行执行,每到Destination Connector执行完毕就进入第二个通道,而应答的处理也是逐级递归。

 

接下来的内容我们就详细介绍这些情况。

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

第二章 什么是通道?

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

第二章 什么是通道?

本章主要介绍Mirth Connect开发框架,讲解运行的各个阶段,请大家仔细研读、理解,对后续章节帮助是很大的。开发者把前端与服务分开运行,服务框架集成了很多流行的服务及协议,从中我们也可以看出开发的大致原理。本章涉及到的知识点需要了解一
2023-06-03

WCF通道是什么

本篇内容主要讲解“WCF通道是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“WCF通道是什么”吧!首先,我们将研究一下通道的内部机理,然后再看一下如何使用WCF类来实现一个通道。什么是WCF
2023-06-17

Photoshop的Alpha通道是什么

Photoshop的Alpha通道是图像中的一个额外通道,用于存储图像的透明度信息。它是一个灰度通道,其像素值表示图像中每个像素点的透明度级别。在Alpha通道中,像素的值从0到255,其中0表示完全透明,255表示完全不透明。Alpha
2023-10-23

PHP __call()方法的第二个参数是什么

本文小编为大家详细介绍“PHP __call()方法的第二个参数是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“PHP __call()方法的第二个参数是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。_
2023-07-06

WCF通道网络传输技术是什么

这篇文章主要介绍“WCF通道网络传输技术是什么”,在日常操作中,相信很多人在WCF通道网络传输技术是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”WCF通道网络传输技术是什么”的疑惑有所帮助!接下来,请跟
2023-06-17

还不知道Anaconda是什么?读这一篇文章就够了

Anaconda指的是一个开源的Python发行版本,其包含了Conda、Python等180多个科学包及其依赖项,下面这篇文章主要给大家介绍了关于Anaconda是什么的相关资料,需要的朋友可以参考下
2023-02-17

网络安全从入门到精通 (第二章-6) 后端基础PHP—表单验证

本文内容:什么是表单?如何创建一个表单:接收并验证:PHP和数据库交互1,什么是表单?  表单在网页中主要负责数据采集。  表单由三部分组成:    表单标签:这里面包含了处理表单数据所用动态脚本的URL,以及数据提交到服务器的方法。    表单域:包含了文本
网络安全从入门到精通 (第二章-6) 后端基础PHP—表单验证
2021-06-03

pytorch tensor计算三通道均值方式是什么

这篇文章主要介绍“pytorch tensor计算三通道均值方式是什么”,在日常操作中,相信很多人在pytorch tensor计算三通道均值方式是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”pytor
2023-07-02

使用通道时,goroutine 的执行顺序是什么?

php小编百草在这里给大家解答一个常见的问题:“使用通道时,goroutine 的执行顺序是什么?”在Go语言中,goroutine是轻量级的线程,可以并发执行。当使用通道来进行协程间的通信时,通道的接收和发送操作是阻塞的,即它们会等待其他
使用通道时,goroutine 的执行顺序是什么?
2024-02-09

python中什么是管道

今天就跟大家聊聊有关python中什么是管道,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Pyth
2023-06-14

VPN隧道协议是什么?

  大家在学习VPN隧道协议的时候,是不是会接触到PPTP、L2TP、IPSec词汇?那么到底是什么意思,它们之间有什么联系?  VPN(虚拟网络)发展至今已经不再是一个单纯经过加密的访问隧道了,它已经融合了访问控制、传输管理、加密、路由选择、可用性管理等对中功能,并在全球的信息安全体系中发挥着重要作用。通过隧道可以将
VPN隧道协议是什么?
2024-04-17

如果你朋友不知道什么是云计算,请把这篇文章转给TA

云计算这个概念从提出到今天,已经差不多10年了。在这10年间,云计算取得了飞速的发展与翻天覆地的变化。“云”从一个听起来离我们特别遥远的概念,到现如今家喻户晓,这是所有从事云计算工作者共同努力的结果。云计算正带给各行各业带来哪些颠覆性改变呢
2023-06-04

什么是一建二建

  一建二建是指一级建造师和二级建造师,二者是建造师的两个级别,其中一建级别比二建高,报考条件比二建严格,且考试难度也高于二建,一建二建都分专业类别考试。  一建二建都是指建造师,建造师是一种执业资格,分为一级建造师和二级建造师,即一建和二建,一建和二建属于建造师的两个级别,但是一建和二建考试没有报考先后关系,考生满足
什么是一建二建
2024-04-18

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录