这是本节的多页打印视图。 点击此处打印.

返回本页常规视图.

Bosch

Bosch/博世

1 - Bosch概述

Bosch/博世概述

公司介绍

世界知名制造商博世(Bosch)创建了一家名为 Residential IoT Services GmbH ( 住宅物联网服务有限公司 / RIoT) 的初创公司。专注于智能家居解决方案。

RIoT 运营着一个智能家居平台,用于跨设备和电器的自动化和信息,并开发了 Home Connect Plus 应用程序。家庭用户可以通过 Home Connect Plus 连接,自动化和集中控制来自不同品牌的各种智能家居设备和整个系统。

Customer:Residential IoT Services GmbH (Bosch-Group)

Industry:Manufacturing

Size:10,000+ employees

Country:Germany

Products and services

  • Azure Application Gateway
  • Azure Cosmos DB
  • Azure Key Vault
  • Azure Kubernetes Service (AKS)
  • Azure Service Bus

主要应用场景

为了控制和自动化智能家居设备,客户使用来自RIoT的Home Connect Plus移动应用程序,该应用程序向RIoT平台发送请求。

事件驱动的微服务

  • binding 构建块
  • pub / sub 构建块

“Dapr 为我们提供了对基础结构组件(如服务总线)的抽象级别。这使得进入发布/订阅模型变得更加容易,

通过调用 Dapr API,开发人员可以将其应用程序代码与状态管理、资源绑定、发布/订阅消息传递和其他常见的分布式系统挑战分离。

自动缩放

为了满足服务的预期规模,RIoT 工程师很早就决定使用 Azure 和分布式应用程序运行时 (Dapr),这是一个开源框架,可以更轻松地为云和边缘构建微服务。RIoT受益于Azure的全球规模以及Dapr与Azure Kubernetes Service(AKS)的集成,这有助于团队更快地将其创新推向市场。

为了部署服务并在 Kubernetes 集群中运行它,开发人员向 Dapr 部署方案添加了一些注释。AKS 可自动执行操作和维护任务,例如预配、缩放和监视,这有助于降低开发人员的复杂性。

Dapr抽象带来的开发便利

Dapr 提供的抽象层还使开发人员可以轻松更改不同环境中使用的组件:

抽象层 云上部署 本地开发测试
pub/sub Azure Service Bus Redis
status Azure Cosmos DB Redis
secret Azure Key Vault Redis

Jasper Mang: Lead Developer:

We used the Dapr SDK to publish events, which gave us the time to focus on what we wanted to communicate, instead of, ‘How do I get this communication implemented?’ We could focus on the real things that matter.

我们使用 Dapr SDK 发布事件,这让我们有时间专注于我们想要传达的内容,而不是如何实现这种沟通?我们可以专注于真正重要的事情。

即专注于 “What to do”,而不是 “How to do”,这也就是云原生的精髓所在:业务逻辑和技术实现分离解耦。

actor模型

actor 是具有单线程执行的计算和状态的隔离单元。使用 Dapr actor 来表示设备及其逻辑,IoT 开发人员可以更轻松地跨群集管理计算任务。

在RIoT平台中,Actor用于表示基于时间的自动化。RIoT 使用了 dapr actor 自带的 timer 和 reminder。

备注:Bosch 是 dapr actor 构建块的第一个 Java 用户,一起完善了 dapr java sdk。

总结

  • 基于微服务的架构支持大量的并发用户,而Dapr简化了 事件驱动的后端系统。
  • Dapr的pub/sub构建模块允许服务之间使用消息进行通信。
  • 而Dapr绑定使Azure服务总线能够接收这些消息并将其发送到指定的微服务中。
  • Azure Cosmos DB是生产状态 存储,而Redis则用于本地开发和测试。

案例资料