BizTalk 内部和外部架构

2024-01-17

我在网上读到,您将“外部模式”与“内部模​​式”分开,并且永远不要将“内部模式”暴露给任何外部参与者。

如果我的解决方案仅充当消息总线来在两个现有系统之间创建松散耦合,我真的需要任何内部模式吗?

System A makes a Request(Message with SchemaA) to Biztalk

Biztalk Maps SchemaA to SchemaB 

Biztalk forwards request of type SchemaB to SystemB

SystemB returns ResponseB 

Biztalk maps ResponeB to ResponeA

Biztalk routes the result back to System A

我看不出拥有内部架构和地图的优点:

架构 -> 内部架构 -> 架构

?


期限canonical schema http://en.wikipedia.org/wiki/Canonical_model通常用于描述内部模式的创建(SchemaInternal在你的最后一个例子中)到诸如 BizTalk 之类的集成机制。

使用规范模式被广泛认为是一种最佳实践 http://msdn.microsoft.com/en-us/magazine/cc163423.aspx,因为它将您的 BizTalk 流程控制映射与任何“其他”系统的架构解耦(此处的其他系统可能位于您的组织内部或外部,例如供应商、客户或合作伙伴系统)。这样,如果通过 BizTalk 集成的任何系统发生变化,它只是外部架构,并映射到需要更改的规范架构。它还可以防止外部架构中固有的外部约定、命名和层次结构差异泄漏到您的内部 BizTalk 工件中。

一般来说,传入消息到规范模式的转换是尽早完成的,例如在接收时,同样,尽可能晚地完成规范转换,例如在发送端口映射上。

规范模式 (CS) 的常见场景是多个交易方共用一个编排或消息流(例如,您可能有许多具有不同系统的供应商,但是它们都提交发票进行处理)。在这种情况下,每个新的供应商系统只需要与您的 CS 集成 - 不需要添加或复制新的处理逻辑 - CS 实际上可以减少这种情况下的总体工作量。 (n x m问题详细解释here https://www.ibm.com/developerworks/community/blogs/SOAPatterns/entry/the_canonical_message_model_pattern?lang=en)。 CS 至关重要的另一个例子是您的业务需要交换消息 - 例如医疗行业交换机将有许多医生和执业系统发送授权请求和发票,这些需要映射并路由到多个医疗基金(医疗援助)系统。

还有FWIW:

  • 当 BizTalk 是 EAI 或 ESB 场景中的端到端解决方案时(例如,IMO CS)最有意义。直接集成 2 个或更多业务线系统。否则,如果 BizTalk 只是大型企业 ESB 上的一个端点,那么使用企业 ESB 架构可能是有意义的内部,因此将外部模式直接映射到 ESB 模式(即不需要anotherBizTalk 中的 CS 集(前提是您的企业拥有良好的变更管理/版本控制机制)。
  • 如果标准模式(例如EDIFACT http://en.wikipedia.org/wiki/XML/EDIFACT)对于您的行业来说存在,因此采用这些作为内部 CS 是否是一个目标是没有意义的。一般来说,这些可能与以下的含义相冲突典范因为行业模式通常需要很详细才能对文档的所有风格和“边缘情况”进行建模)。就我个人而言,我会确保我有一个到/来自所述行业模式的映射,但会在内部使用自定义模式。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

BizTalk 内部和外部架构 的相关文章

  • Biztalk 和调用 Web 服务的最佳方式

    我正在编写一个 biztalk 编排 需要调用一个 Web 服务 可能是多个 Web 服务 而且可能不止一次 我面前有两个选择 一 在单独的代码项目中使用 wsdl 并从表达式形状的代码中调用 Web 服务 二 从 Biz 使用它 获取架构
  • BizTalk部署期间不需要通过控制台导入MIS时

    允许哪些 BizTalk 应用程序 编排 模式 映射更改不强制通过管理控制台导入 MSI 而只在 GAC 中安装 DLL 通过控制台强制导入以停止编排并终止实例 但在 GAC 中安装仅需要重新启动该应用程序的主机 因此 有时不停止生产环境中
  • BizTalk - 将命名空间放在属性上?

    参考使用 json Array 的示例 JSON 和 XML 之间的转换 http www newtonsoft com json help html convertingjsonandxml htm 我想要 BizTalk 架构能够构建如
  • BizTalk 强制创建空元素而不使用 xslt 调用模板

    当源元素不存在时 BizTalk 映射中是否有强制创建目标元素而不使用 xslt 调用模板 我将父 子 xml 映射到 wcf sql 适配器生成的架构 该架构具有用于存储过程参数的表值参数 所以我的源xml是
  • 如何防止 BizTalk 2013/R2 WCF-WebHttp Rest SendPort 在 Http Status=400 上挂起

    我使用 WCF WebHttp SendPort 从 BizTalk 编排调用供应商的 REST 服务 即使我在具有scope exception的业务流程中捕获了此System Exception SendPort仍然处于挂起状态 是否有
  • GCHandle、AppDomains 托管代码和第 3 方 dll

    我查看了许多关于异常 无法跨 AppDomains 传递 GCHandle 的线程 但我仍然不明白 我正在使用由 DLL 驱动的 RFID 读取器 我没有这个 DLL 的源代码 只有一个示例来展示如何使用它 该示例效果很好 但我必须在另一个
  • BizTalk 内部和外部架构

    我在网上读到 您将 外部模式 与 内部模 式 分开 并且永远不要将 内部模式 暴露给任何外部参与者 如果我的解决方案仅充当消息总线来在两个现有系统之间创建松散耦合 我真的需要任何内部模式吗 System A makes a Request
  • 使用 C# 和 BizTalk 将 Excel (xlsx) 转换为 XML

    我已经查看了该论坛上有关类似问题的大多数主题 但尚未找到我正在寻找的内容 我正在尝试编写一个管道组件BizTalk 2013 R2使用 C 简单地转换传入的Excel 2010 xlsx文件到它的裸 基本 XML 表示形式 我不想针对它运行
  • BizTalk Server 有哪些可行的替代方案? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 在评估不同的系统集成策略时 我听到了一些关于 BizTalk Server 的鼓励的话 但也听到了一些
  • 在 Biztalk WCF 适配器中启用流式处理

    我想从 biztalk 发送一个带有一些元数据的大 blob 到 WCF 服务 我可以自由控制服务设置和 biztalk 设置 尽管我必须使用 http 来访问该服务 该 blob 很可能在 GB 范围内 因此使用 BasicHttp 或
  • Visual Studio 2008 中 BizTalk 架构项目的引用问题

    在大型 VS 2008 解决方案中 我们有不同的架构项目和映射项目 映射项目引用了适当的模式项目 总体来说效果很好 但是 最近我添加了一个新的架构项目 它始终如一地给出了同样的问题 当我向其中添加新架构 并且想要在已引用该架构项目的映射项目
  • BizTalk 2009 上的意外绑定重置

    我在 BizTalk 2009 上使用了许多应用程序 我多次注意到 在随机应用程序中添加资源 dll 后 精确应用程序的所有绑定 自定义管道 都会完全重置为之前的早期状态 我真的很好奇为什么会发生这种情况 但我还需要一个解决方案来阻止该行为
  • 使用 Makecert 设置密钥使用属性

    是否可以使用 makecert 或我可以用来生成自己的测试证书的任何其他工具来设置密钥用法属性 我感兴趣的原因是 用于 BizTalk Server AS2 传输的证书需要使用数字签名的密钥进行签名 并使用数据加密或密钥加密进行加密 解密
  • BizTalk 平面文件架构 - 如何接受 LF 或 CRLF 作为行分隔符

    我们的客户向我们发送一个平面文件作为输入 然后我们将其转换为 XML 文件 然后发送到目标系统 平面文件由多行组成 每行由 LF 或 CRLF 分隔 如何创建平面文件架构 以便 BizTalk 可以解释每一行数据 无论该行是由 LF 0x0
  • 如何配置 BizTalk WCF-SQL 适配器以从 SQL Server 2012“始终在线”副本数据库获取数据?

    我们有一个客户端将使用 SQL Server 2012 的 AlwaysOn 可用性功能 他们希望将 BizTalk WCF SQL 端口连接到只读副本 The 文档 http technet microsoft com en us lib
  • 使用 BizTalk Web 服务重新发布内部 Web 服务

    我正在尝试使用 BizTalk 在两个 Web 服务之间进行通信 它必须是这样的 Service1获取输入并通过 BizTalk 发送消息Service2 Service2响应该消息 将其转发至 BizTalk 并将其传递至Service1
  • 从 BizTalk 中的平面文件中删除标头

    在 BizTalk 中从平面文件中删除标题行的最简单方法是什么 我通过为标题行 以及正文 创建一个单独的架构来实现这一点 然后将 配置管道 对话框中的 HeaderSpecName 属性设置为我刚刚创建的标题架构 然后将 PreserveH
  • Biztalk 项目命名约定

    当启动 BizTalk 项目时 我通常遵循发现的命名约定here http www traceofthought net misc BizTalk 20Naming 20Conventions htm 您命名项目和程序集的位置类似于 MyC
  • Edi 文件头未使用 BizTalk 转换为 XML

    我创建了将 EDI 转换为 XML 的 BizTalk 项目 它将所有事务段转换为 XML 但标头段 n 例如 ISA 不会转换为 XML 格式 Here is configuration in BizTalk for EDI file 我
  • 无法安装 BizTalk 2013r2 CU6

    我正在尝试为 BTS2013r2 安装 CU6 我运行 exe 它解压然后启动向导 它进行或一段时间后会显示以下消息 I have the BizTalk ISO already downloaded from MSDN and mount

随机推荐

  • 使用 mysqli_query 的长文本最大内存错误

    我工作的公司使用Kayako https www kayako com 管理其支持票证 我准备制作一个外部网络应用程序 它可以获取一家公司的所有门票并显示历史记录 我使用 mysqli query 连接到数据库 link mysqli co
  • 将数组添加到 web.config 中的键

    我想知道是否可以将数组作为键中的值 示例
  • 在 postgresql 中查找现有函数脚本的命令是什么?

    由于我们使用 sp helptext 过程名称 来获取 Sqlserver 中的 SP 脚本 因此我需要可用于从 postgresql 检索函数脚本的命令 请帮忙 如果您使用 pl sql 命令行界面 您可以使用 df 正如 tobixen
  • BGAppRefreshTask 后台任务未执行

    我正在使用新的 iOS13 后台任务框架 并实现 BGAppRefreshTask 类型 我的问题是 即使在等待几个小时之后 我的设备也永远不会调用该任务 但我能够使用调用 simulateLaunchForTaskWithIdentifi
  • 在 Tomcat 中为每个服务启用相互 SSL [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我已经成功地在客户端应用程序和 Tomcat 实例之间设置了相互 SSL 不过 我现在正在寻找一种方法 通过相互 SSL 只公开 Tomcat 中部署
  • 为什么实际的 Switch 图像/动画没有显示?

    我在 XML 中声明了一个 Switch 它是使用特定主题的 Activity 的一部分
  • 如何正确安装msvcr71.dll

    我如何在 Windows Server 2003 上安装我的软件需要的 msvcr71 dll 我真的不想将此 dll 复制到 system32 文件夹 因为它可能会破坏此目标系统 只需将其复制到程序的所有可执行文件所在的文件夹中即可 这是
  • sprite-kit 游戏中是否可以有 Twitter / Facebook 分享按钮?

    我完全迷失了 我找到的所有教程都是针对带有故事板的 iOS 6 应用程序 我的问题是你是否可以在精灵套件游戏中拥有 Twitter 或 Facebook 共享功能 如果是这样 添加它的最佳方法是什么 我读过的很多教程都使用视图控制器 但 s
  • 内存不足错误图像视图

    我对 imageview 有问题 我有 77 张图片 jpg 和 126 个引用文本 我想要的只是简单的应用程序 我想显示带有背景图片的所有引用 并且我使用 viewflipper 所以当我向左 向右滑动时进入下一个引用 我给你我现在使用的
  • Qt Designer如何更改背景

    这是转帖 我是 Qt Designer 的新手 想要对一些按钮的丑陋做一些事情 我昨天所做的就是在互联网上查找如何在 Qt Designer 中更改屏幕的背景颜色 如何更改按钮的颜色以及如何使其侧面变成另一种颜色 你猜怎么了 我什么也没找到
  • RubyMine 文件夹树不刷新

    今天首次在 Mac OSX Leopard 上使用 RubyMine 2 0 2 如果我在文件系统中创建文件 例如 使用脚本 生成 这些新文件不会出现在 ruby mine 中 我在重新启动程序时取得了有限的成功 因为 db 文件夹中的文件
  • 如何在 pandas DataFrame 中允许重复的列名

    我有一个数据框 我想更新该数据框的列名称 列名有重复的条目 下面的代码给出错误 无法从重复的轴重新索引 list alpha beta gamma alpha df pd DataFrame datframe columns list No
  • Spotify 最新更新:Autohotkeys 脚本损坏

    我曾经使用 AutoHotKey 脚本作为 Spotify 快捷方式 内置快捷方式有限 只有在应用程序处于焦点状态时才有效 我通常在工作时将其保留在后台 不管怎样 它之前已经更新了一百万次了 没有任何问题 但是我下载了最新的 Spotify
  • AVAssetExportSession 卡住(未启动)导出

    我尝试从照片库导出视频 但导出回调从未执行 我定期检查导出进度 进度始终为零 下面的代码在 99 9 的情况下都有效 但有时在某些设备上 绝对随机 它会停止工作 只有重新启动 iPhone 才有帮助 AVAssetExportSession
  • 为什么这封邮件会直接进入垃圾邮件箱?

    我正在使用以下脚本发送邮件 但这总是最终进入垃圾邮件文件夹 为什么 您在发送邮件时必须使用标头 以证明邮件是来自真实来源而不是机器人 尝试这个
  • 使用 CQRS 在 DDD 中进行命令验证

    我正在学习 DDD 并利用 CQRS 模式 我不明白如何在不从数据存储中读取的情况下验证命令处理程序中的业务规则 例如 克里斯想给阿什利一件礼物 该命令可能是 GiveGiftCommand 我什么时候才能验证克里斯确实拥有他想要赠送的礼物
  • PHP 购物车中买一送半价总计

    我正在用 PHP 创建一个购物车 其中一个特定的商品是买一送一半价 当用户购买该商品时 我希望从总数中扣除报价 但我坚持如何从数学上做到这一点 到目前为止 我在 if 循环中从数据库获取数据有类似的内容 total total arrayc
  • 内嵌显示单选按钮列表

    我的页面上有一些广播列表 我面临的问题是单选按钮的文本没有显示在单选按钮的内联中 我已将重复布局放入表和流中 但两者都不起作用 我尝试添加一种显示样式 内联 但这也不起作用 尽管它在复选框上起作用 并且我认为也许它在这里也起作用 这只是一个
  • 增强 Jquery 拖放演示

    我有一个非常匹配的要求这个 Jquery 演示 http jqueryui com demos droppable shopping cart 这是一个简单的购物车演示 基本上我需要对该演示进行两项增强 我需要文本输入以及可用的 产品 因此
  • BizTalk 内部和外部架构

    我在网上读到 您将 外部模式 与 内部模 式 分开 并且永远不要将 内部模式 暴露给任何外部参与者 如果我的解决方案仅充当消息总线来在两个现有系统之间创建松散耦合 我真的需要任何内部模式吗 System A makes a Request