首页 > 其他分享 >采用Dapr 的IoT 案例

采用Dapr 的IoT 案例

时间:2024-06-09 16:54:55浏览次数:29  
标签:服务 Kubernetes IoT 架构 案例 Dapr 2022 Nuboj

采用Dapr 的IoT 案例

  合集 - Dapr(46)   1.Dapr中国社区活动之 分布式运行时开发者日 (2022.09.03)2022-08-312.Dapr 的 gRPC组件(又叫可插拔组件)的提案2022-09-103.Dapr v1.9.0 版本已发布2022-10-214.Dapr 长程测试和混沌测试2022-10-045.Dapr 集成 Open Policy Agent 实现 接口的访问控制2022-09-226.Dapr 证书过期了怎么办? 别慌,有救!2022-09-197.Dapr v1.13 版本已发布03-068.通过 Radius 实现Dapr 云原生应用程序开发协作2023-10-199.Dapr 发布模糊测试报告|Dapr 完成模糊测试审核2023-07-0410.Dapr v1.11 版本已发布2023-06-1411.Dapr Workflow构建块的.NET Demo2023-02-1812.Dapr v1.10.0 版本已发布2023-02-1713.使用 Visual Studio 2022 调试Dapr 应用程序2022-12-1114.读Bilgin Ibryam 新作 《Dapr 是一种10倍数 平台》2022-11-2015.Dapr 与 .NET Aspire 结合使用获得无与伦比的本地开发体验05-1716.用于演示文稿的新 Dapr 幻灯片03-1417.Dapr 正式发布1.02021-02-1718.Dapr Actor 的微服务架构2021-03-1319.为什么 Dapr 如此令人兴奋2021-10-0220.浅析 Dapr 里的云计算设计模式2021-09-0621.Dapr 客户端 搭配 WebApiClientCore 玩耍服务调用2021-08-0522.面向.NET开发人员的Dapr- actors 构建块2021-07-0423.AKS 集群扩展方式提供 Dapr2022-02-1224.在 Dapr 中使用 Cron 绑定的计划任务2022-02-0625.从服务之间的调用来看 我们为什么需要Dapr2022-02-0526.推荐一个基于Dapr的 Red Dog 的完整微服务应用程序2022-02-0427.使用 Dapr 缩短软件开发周期,提高工作效率2022-01-2428.Dapr 集成 APISIX 做API网关2021-11-1529.集成Dapr的 Azure 容器应用2021-11-0430.单体应用 适合采用 dapr 构建吗?2021-10-1531.离线安装 Dapr2022-07-2632.腾讯云EKS 上部署 eshopondapr2022-07-1233.Dapr v1.8 正式发布2022-07-0934.Dapr 1.7 之 Unix Domain socket 他来了2022-06-0435.Dapr 不是服务网格,只是我长的和他很像2022-05-0836.Dapr 远程调试之 Nocalhost2022-04-2137.Dapr 和 Spring Cloud 对比分析2022-04-1838.在边缘计算场景中使用Dapr2022-04-1439.分布式应用运行时 Dapr 1.7 发布2022-04-1340.在非k8s 环境下 的应用 使用 Dapr Sidekick for .NET2022-04-0741.Dapr集成之GRPC 接口2022-03-1542.在 k8s 以外的分布式环境中使用 Dapr2022-03-1343.Dapr 弹性的策略2022-03-1244.Dapr 助力应用架构的可持续性2022-02-2645.Dapr 中文社区汇总2022-02-24 46.采用Dapr 的IoT 案例06-06 收起  

CNCF 发布了一篇Dapr 的IoT 案例:Tempestive uses Dapr and K8s to track IoT messages | CNCF。Tempestive 是一家物联网解决方案提供商,其产品 Nuboj 面临着可扩展性、成本和维护方面的挑战。为了解决这些问题,Tempestive 采用 Dapr 和 Kubernetes 构建了一个新的架构,实现了以下优势:

  • 模块化: Nuboj 现在可以灵活地适应不同规模和需求的系统,无需昂贵的基础设施。
  • 平台独立性: Dapr 允许 Nuboj 与底层技术解耦,例如数据库和消息传递软件,从而提高灵活性和可维护性。
  • 多语言支持: Dapr 使 Nuboj 能够使用多种编程语言进行开发,例如 C#、Java 和 Python,从而扩展其功能。
  • 成本降低: 新架构显著降低了产品成本,使 Tempestive 在市场上更具竞争力。

 

Tempestive 在采用 Dapr 和 Kubernetes 之前,Nuboj 的微服务架构遇到了以下可伸缩性问题:
1. 资源限制: 昂贵的资源: 早期版本 Nuboj 的微服务架构需要昂贵的资源才能实现可伸缩性,这增加了运营成本并限制了其扩展能力。
本地化需求: 一些客户需要一个可以从几台设备扩展到几十万台设备的本地解决方案,而早期版本 Nuboj 难以满足这种需求。
2. 扩展复杂性: 微服务间依赖: 早期版本 Nuboj 的微服务之间存在复杂的依赖关系,这增加了扩展的难度。修改或升级一个微服务可能会影响到其他微服务,导致系统出现故障或性能问题。
手动扩展: 早期版本 Nuboj 的扩展需要手动操作,这不仅效率低下,而且容易出错。
3. 运维挑战: 部署和监控: 早期版本 Nuboj 的微服务架构需要手动部署和管理,这增加了运维成本和复杂性。此外,监控和调试微服务也更加困难。
故障恢复: 早期版本 Nuboj 的故障恢复机制不够完善,这导致系统在出现故障时难以快速恢复,从而影响了系统的可用性。
4. 环境限制: 云依赖: 早期版本 Nuboj 基于云的架构限制了其在本地环境中的部署能力,这无法满足一些客户对数据安全性和成本控制的需求。

 

Tempestive 在采用 Dapr 和 Kubernetes 之前,Nuboj 的微服务架构面临着资源限制、扩展复杂性、运维挑战和环境限制等问题,这些问题限制了其可伸缩性和可用性。迁移到 Dapr 和 Kubernetes 后,Nuboj 的架构发生了以下关键变化:
1. 微服务架构:
模块化: Nuboj 从单体应用转变为微服务架构,将功能划分为独立的微服务模块。这提高了系统的可扩展性和可维护性,并允许各个模块独立部署和升级。
独立性: 微服务之间通过 Dapr 提供的 gRPC API 进行通信,无需直接依赖。这提高了系统的灵活性和可移植性,并允许使用不同编程语言开发微服务。
2. 发布/订阅消息传递:
解耦: 使用 Dapr 的发布/subscribe API,Nuboj 可以解耦发布者和订阅者。这意味着设备可以独立发送消息,而处理组件可以独立接收消息,无需直接相互依赖。
可扩展性: 发布/subscribe 模式支持消息代理(如 MQTT、Redis 或 Kafka),这些代理可以有效地处理大量消息,并确保消息的可靠传递。
负载均衡: 消息代理可以自动分配消息到不同的订阅者,从而实现负载均衡并提高吞吐量。
3. 容器化和自动化部署:
容器化: Nuboj 的微服务被容器化,这允许它们在不同的环境中一致地运行,并简化了部署和扩展过程。
Kubernetes 集群: Nuboj 使用 Kubernetes 集群来管理容器化的微服务。Kubernetes 提供了自动化部署、扩展和管理功能,并确保了高可用性和可靠性。
4. 基础设施抽象:
平台独立性: Dapr 将底层基础设施技术(如数据库和消息传递系统)抽象化,使 Nuboj 可以轻松地在不同的环境中运行,而无需修改代码。
灵活的配置: Dapr 允许通过配置文件轻松地更改底层基础设施技术,例如使用不同的数据库或消息代理。
5. 多语言支持:
编程语言独立性: Dapr 支持多种编程语言,例如 C#、Java、Python 等。这使得 Nuboj 可以使用最适合特定功能的编程语言开发微服务。

dapriotcase

总而言之,迁移到 Dapr 和 Kubernetes 后,Nuboj 的架构变得更加模块化、可扩展、可维护和灵活。它现在可以处理海量数据流,并支持多种部署环境。这使得 Nuboj 成为更具竞争力的物联网平台。Dapr 和 Kubernetes 分别在解决 Nuboj 微服务架构的可伸缩性问题中发挥了重要作用:


Dapr 的作用:

  • 解耦微服务: Dapr 通过抽象化服务间通信,使得微服务之间可以独立扩展和部署。这降低了微服务之间的依赖,并简化了扩展过程。
  • 发布/订阅模式: Dapr 的发布/subscribe API 支持可扩展的消息传递,允许设备独立发送消息,而处理组件可以独立接收消息。这提高了系统的吞吐量和可扩展性。
  • 基础设施抽象: Dapr 将底层基础设施技术(如数据库和消息传递系统)抽象化,使 Nuboj 可以轻松地在不同的环境中运行,而无需修改代码。
  • 多语言支持: Dapr 支持多种编程语言,这使得 Nuboj 可以使用最适合特定功能的编程语言开发微服务。


Kubernetes 的作用:

  • 自动化部署和扩展: Kubernetes 提供了自动化部署、扩展和管理功能,简化了微服务的部署和扩展过程,并确保了高可用性和可靠性。
  • 负载均衡: Kubernetes 可以自动分配流量到不同的微服务实例,从而实现负载均衡并提高系统的吞吐量。
  • 自我修复: Kubernetes 可以自动检测和恢复失败的微服务实例,从而提高了系统的可用性。
  • 存储和网络管理: Kubernetes 提供了存储和网络管理功能,简化了微服务架构的运维工作。

标签:服务,Kubernetes,IoT,架构,案例,Dapr,2022,Nuboj
From: https://www.cnblogs.com/Leo_wl/p/18239756

相关文章

  • 【JAVASE】面向对象编程综合案例--------模仿电影信息系统
    需求:(1)展示系统中的全部电影(每部电影展示:名称、价格)(2)允许用户根据电影编号(ID)查询出某个电影的详细信息。目标:使用所学的面向对象编程实现以上两个需求。代码:Movie.javaMovieOperator.javaTest.java代码运行;......
  • 为什么C++友元函数必须在类内部声明?解析与案例
    友元函数是C++中独特的编程结构,允许一个非成员函数或者其他类访问另一个类的私有和保护数据成员。友元在很多情况下是非常有用的,比如操作符重载、类间紧密合作等。为什么需要在类内部声明友元函数?访问权限:友元函数需要访问类的私有和保护数据成员。为此,必须在类内部声明,以便......
  • CATIA入门操作案例——彩色手环的绘制,扫掠中使用拔模方向的使用
    目录引出手花绘制扫掠,使用拔模方向绘制实体改颜色总结异形弹簧新建几何体草图编辑,画一条样条线进行扫掠,圆心和半径画出曲面上的螺旋线再次选择扫掠,圆心和半径其他自定义信号和槽1.自定义信号2.自定义槽3.建立连接4.进行触发自定义信号重载带参数的按钮触发信号触发信......
  • Tailwindcss Layout布局相关样式及实战案例,5万字长文,附完整源码和效果截图
    aspect相关样式类基础样式ClassPropertiesaspect-autoaspect-ratio:auto;aspect-squareaspect-ratio:1/1;aspect-videoaspect-ratio:16/9;案例:引入B站视频Usetheaspect-*utilitiestosetthedesiredaspectratioofanelement.使用’aspect-*'实用工......
  • 五分钟上手IoT小程序
    五分钟上手IoT小程序IoT小程序框架搭建开发环境首先安装NodeJs安装NodeJs验证安装成功安装cnpm安装VSCode开发IDE下载开发IDE安装开发IDE安装框架脚手架下载模拟器创建工程项目应用编译(打包构建)VSCode开发IDE安装插件通过开发插件创建工程编译工程debug编译编译......
  • 某大型医院IBM 3650服务器 raid重组案例——数据完美修复
    我们今天谈的是一个来自四川的大型三甲医院的服务器数据恢复的真实的一个案例,是一台IBM的3650服务器,一共六块硬盘坏了,有两块硬盘是300GB,一共是有六块盘,两块盘是曝光灯离线了,导致这个医院的挂号系统,诊疗系统全部瘫痪,所有数据全部丢失,医院属于一个停摆的状态,医院一旦这种服务器损坏......
  • 【免费Web系列】JavaWeb实战项目案例七(项目结束)
        这是Web第一天的课程大家可以传送过去学习 http://t.csdnimg.cn/K547r  登录认证在前面的课程中,我们已经实现了部门管理、员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了Tlias智能学习辅助系统的后台。这是不安全的,所以我们今天的主题就是登录......
  • UV Cleavable Biotin-PEG2-alkyne
    【特性】分子式:C38H48N4O9S分子量:736.88外观:淡黄色或白色固体,存储条件:在-20°C的环境中长期保存,并且需要在暗黑处和干燥的条件下存放溶解性:大部分有机溶剂,同时也能够溶于水中结构式:【用途】主要适用于科研实验,特别是那些需要生物素标记的实验。通过紫外线照射,可以切断......
  • PLC通过Profinet转Modbus网关与流量计通讯案例
    PLC通过Profinet转Modbus网关与流量计通讯案例1、案例背景在工业自动化系统中,PLC(可编程逻辑控制器)与流量计之间的通信是保证以后设备生产数据准确传输和实现控制功能的关键。但是,由于PLC和流量计可能使用不同的通信协议(如Profinet和Modbus),因此需要一种转换机制来实现它们之......
  • GitHub狂揽6700 Star,Python进阶必备的案例、技巧与工程实践
    当下是Python急剧发展的时代,越来越多的人开始学习和使用Pyhon,而大家也遇到了各种问题。这份手册清晰、细致地介绍了Python代码应该遵循的编程风格,并解释了背后的原理和机制。入门Python语言相对简单,但写出优雅的代码并非易事。这份手册深入讲解了Python进阶知识的方方......