你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

供应链跟踪与追溯

Azure IoT 中心

解决方案构想

本文是一种解决方案构想。 如果你希望我们在内容中扩充更多信息,例如潜在用例、备用服务、实现注意事项或定价指南,请通过提供 GitHub 反馈来告知我们。

一种常见的区块链模式是在某个资产沿着多方供应链移动时通过 IoT 对其进行监视。

体系结构

Architecture diagram shows I O T devices to hub; data from message broker to transaction builder then Blockchain to Event Grid for use by consumers.下载此体系结构的 SVG

IoT 设备与 IoT 中心通信。 IoT 中心配置为一个路由,它将特定消息发送到与该路由关联的服务总线。 该消息仍采用设备的本机格式,需要转换为 Azure Blockchain Workbench 使用的格式。

Azure 逻辑应用执行这种转换。 将新消息添加到与 IoT 中心关联的服务总线时触发逻辑应用,然后它转换消息并将其传送到服务总线,后者用于将消息传送到 Azure Blockchain Workbench。

第一个服务总线有效地充当 IoT 中心的“发件箱”,第二个服务总线充当 Azure Blockchain Workbench 的“收件箱”。

数据流

  1. IoT 设备与 IoT 中心通信。 IoT 中心配置为一个路由,它将特定消息发送到与该路由关联的服务总线。 该消息仍采用设备的本机格式,需要转换为 Azure Blockchain Workbench 使用的格式。 Azure 逻辑应用执行这种转换。 将新消息添加到与 IoT 中心关联的服务总线时触发逻辑应用,然后它转换消息并将其传送到服务总线,后者用于将消息传送到 Azure Blockchain Workbench。 第一个服务总线有效地充当 IoT 中心的“发件箱”,第二个服务总线充当 Azure Blockchain Workbench 的“收件箱”。
  2. DLT 使用者从消息中转站(服务总线)提取数据并将数据发送到交易生成器 - 签名器。
  3. 交易生成器生成交易并签名。
  4. 将已签名的交易路由到区块链(个人 Ethereum 联盟网络)。
  5. DLT 观察程序获取交易已提交到区块链的确认,并将确认发送到消息中转站(服务总线)。
  6. DB 使用者将确认的区块链交易发送到链外数据库(Azure SQL 数据库)。
  7. 通过连接到链外数据库(Azure SQL 数据库),使用 Power BI 等工具对信息进行分析和可视化。
  8. 将来自账本的事件传送到事件网格和服务总线,以供下游使用者使用。 “下游使用者”的示例包括旨在对事件执行操作的逻辑应用、函数或其他代码。 例如,Azure 函数可以接收事件,然后将其放置在 SQL Server 等数据存储中。

组件

  • Application Insights:使用 Application Insights 在 Web 应用中检测问题、诊断故障和跟踪使用情况。 在整个开发生命周期内做出明智的决策。
  • Web 应用:快速创建并大规模部署任务关键型 Web 应用
  • 存储帐户:持久、高度可用、高度可缩放的云存储
  • 虚拟机:为 Ubuntu、Red Hat 等预配虚拟机
  • Microsoft Entra ID:同步本地目录并启用单一登录
  • Azure SQL 数据库是一个关系数据库服务,可用于在云中快速创建、扩展和缩放关系应用程序。
  • Azure Monitor:针对任何 Azure 资源对数据进行高精度实时监视。
  • 服务总线:在私有云环境和公有云环境中连接
  • 事件网格:实现大规模的可靠事件传递

方案详细信息

可能的用例

这种模式的一个典型示例是易腐货品(例如食品或药品)的冷藏运输,在整个运输过程中必须满足特定的合规规则。 在此场景中,交易发起方(例如零售商)指定供应链的保管员必须遵守的契约条件,例如所需的湿度和温度范围。

在任何时候,如果设备的温度或湿度测量值超出范围,智能合同状态将会更新,以通过在区块链上记录交易并触发下游修正事件来指明它不合规。

部署此方案

后续步骤