车联网设备接入一消息流转一API服务全链路标准架构
【摘要】 本架构面向车联网场景,以华为云IoT设备接入服务(IoTDA)为入口,通过WAF、ELB、APIG构建安全API网关层,利用Kafka消息队列实现设备消息的异步解耦与流转,结合CCE/FunctionGraph进行业务处理,构建从设备接入到API服务交付的全链路标准架构。
1. 用途和受众
1.1 预期用途
- 指导华为云上车联网设备接入、消息流转和API服务全链路的设计和开发。
- 为售前、解决方案设计、实施和审查提供可重用的架构模式。
- 作为解决方案手册、交付包或实际部署的架构基础。
- 定义安全性、可靠性、性能、成本、运营和合规性护栏。
1.2 目标受众
- 华为云 IoTDA 用户和车联网设备接入开发人员
- 车联网平台架构师和后端服务开发人员
- 车队管理系统和车主 App 开发团队
- 关注车联网数据实时处理与 AI 分析(异常检测、驾驶安全模型)的数据工程师和算法工程师
- 华为云 APIG 用户和 API 网关运维管理员
2. 参考架构概述
2.1 架构描述
本架构以车联网设备接入为核心场景,构建从设备端到API服务交付的全链路标准架构。设备通过IoTDA(IoT设备接入服务)接入云平台,经WAF(Web应用防火墙)防护后由ELB(弹性负载均衡)分发流量至APIG(API网关)。APIG将请求路由至后端服务,业务消息通过Kafka消息队列实现异步解耦与流转,CS(流计算服务)对实时消息流进行处理,SMN(消息通知服务)触发事件通知。计算层采用CCE(云容器引擎)部署微服务和FunctionGraph(函数服务)处理事件驱动逻辑。数据层由GaussDB(数据库)存储结构化数据、OBS(对象存储)存储非结构化数据、DCS(分布式缓存)提供低延迟缓存。ModelArts(AI开发平台)提供模型训练与推理能力,DLI(数据湖探索)进行大数据分析。IAM(身份认证)统一管理访问权限,CES(云监控)和AOM(应用运维)提供全链路监控与运维能力。
2.2 业务背景
| 项目 | 描述 |
|---|---|
| 业务问题 | 车联网场景下海量设备接入、高并发消息流转与API服务交付缺乏统一标准架构,设备数据从接入到服务化处理链路长、组件多、安全与可靠性要求高 |
| 期望的结果 | 建立标准化、可复用的车联网全链路架构,实现设备秒级接入、消息毫秒级流转、API服务快速交付,同时保障安全合规与可观测性 |
| 主要用户 | 车联网平台运营方、车企IT团队、解决方案架构师、后端开发工程师、运维工程师 |
| 关键制约因素 | 设备规模可达百万级、消息延迟要求毫秒级、数据合规需满足GDPR/个人信息保护法、预算有限需控制云资源成本、已有部分遗留系统需兼容 |
| 成功指标 | 设备接入成功率≥99.9%、消息端到端延迟<100ms、API服务可用性≥99.95%、日均处理消息量≥1亿条、运维告警响应时间<5分钟 |
2.3 架构优点
- 全链路标准化:从IoTDA设备接入到APIG API服务交付,各层职责清晰,组件间通过标准协议对接,降低集成复杂度。
- 异步解耦与高吞吐:Kafka消息队列将设备消息生产与消费解耦,支持百万级设备并发接入,峰值流量通过消息缓冲平滑处理。
- 安全纵深防御:WAF在入口拦截Web攻击,IAM统一身份认证与权限管控,APIG提供API级别的鉴权与限流,形成多层安全防护体系。
- 弹性伸缩:CCE支持微服务按需弹性扩缩容,FunctionGraph事件驱动自动伸缩,应对流量波峰波谷无需预留资源。
- 数据分层存储:GaussDB支撑事务型结构化数据、OBS存储海量非结构化数据、DCS提供低延迟缓存,按数据特征选择最优存储方案。
- AI与数据分析融合:ModelArts支持模型训练与在线推理,DLI对数据湖中海量车联网数据进行交互式分析,实现数据驱动决策。
- 全链路可观测:CES监控云资源指标,AOM提供应用层链路追踪与日志聚合,实现从基础设施到应用代码的端到端可观测性。
2.4 设计关注点
| 效益 | 架构如何实现它 |
|---|---|
| 安全与合规 | WAF拦截OWASP Top 10攻击,IAM统一身份认证与RBAC权限管控,APIG提供API级鉴权与限流,数据传输全程TLS加密,OBS支持服务端加密 |
| 可靠性和弹性 | Kafka多副本保证消息不丢失,CCE支持多可用区部署与自动故障转移,FunctionGraph无状态自动伸缩,GaussDB主备高可用,关键服务跨AZ部署 |
| 性能和可扩展性 | DCS缓存热点数据降低数据库压力,Kafka分区并行消费提升吞吐,CCE水平弹性扩缩容,APIG连接池复用减少开销,CS流式处理实现毫秒级实时计算 |
| 成本效益 | FunctionGraph按调用计费避免空闲浪费,CCE弹性伸缩按需分配资源,OBS按量付费存储冷热数据分层,DCS按需选择规格避免过度配置 |
| 卓越运营 | CES+AOM全链路监控与告警自动化,Kafka消息积压监控与自动扩分区,CCE滚动升级零中断,日志统一采集至DLI进行分析 |
| 交付敏捷性 | CCE容器化部署支持DevOps流水线快速迭代,FunctionGraph事件驱动无需管理基础设施,APIG API快速发布与版本管理,IaC模板化部署加速环境搭建 |
2.5 典型架构

典型架构图
用实际服务替换通用节点。显示相关的区域、可用区、VPC、子网、信任边界、入口和出口边界。
2.6 流程描述
- 设备接入:车联网终端设备通过MQTT/HTTP协议连接IoTDA(IoT设备接入服务),IoTDA完成设备身份认证与注册,建立设备与云平台的长连接通道。
- 安全防护与流量分发:设备/API请求经WAF(Web应用防火墙)进行安全过滤,拦截恶意请求后由ELB(弹性负载均衡)将流量均匀分发至后端APIG实例。
- API路由与鉴权:APIG(API网关)接收请求后进行API级别的身份认证、限流和路由,将合法请求转发至后端CCE微服务或FunctionGraph函数。
- 消息生产与流转:业务服务将设备消息发布至Kafka消息队列,消息按Topic分区存储,实现生产者与消费者的异步解耦。
- 流式实时处理:CS(流计算服务)订阅Kafka消息流,对设备遥测数据进行实时清洗、聚合和规则计算,输出处理结果至下游存储或通知服务。
- 事件通知:SMN(消息通知服务)根据规则触发告警或业务通知,将事件推送到订阅端(邮件、短信、HTTP回调等)。
- 数据持久化:结构化业务数据写入GaussDB(数据库),非结构化数据(如设备文件、日志)存入OBS(对象存储),热点查询数据缓存至DCS(分布式缓存)。
- AI推理与分析:ModelArts(AI开发平台)加载训练好的模型对设备数据进行在线推理,DLI(数据湖探索)对OBS/GaussDB中海量数据进行交互式查询与统计分析。
- 监控与运维:CES(云监控)采集云资源指标,AOM(应用运维)提供应用链路追踪与日志聚合,IAM(身份认证)全程管控访问权限,保障全链路安全可观测。
2.7 云服务产品清单
| 分类 | 服务或产品 | 推荐配置 |
|---|---|---|
| 接入 | IoTDA IoT设备接入服务 | 标准版,支持百万设备连接 |
| 安全 | WAF Web应用防火墙 | 专业版,启用OWASP规则集 |
| 网络 | ELB 弹性负载均衡 | 共享型/独享型,多可用区 |
| 应用 | APIG API网关 | 专用实例,8核16G |
| 消息 | Kafka 消息队列 | 3节点集群,每节点4核8G,3副本 |
| 计算 | CCE 云容器引擎 | 按需节点池,节点8核16G |
| 计算 | FunctionGraph 函数服务 | 按需,内存512MB-3GB |
| 数据 | GaussDB 数据库 | 主备版,8核16G,500G存储 |
| 数据 | OBS 对象存储 | 标准存储+低频存储分层 |
| 数据 | DCS 分布式缓存 | 主备Redis,4G-16G |
| 分析 | CS 流计算服务 | 按CU分配,8CU起步 |
| 分析 | DLI 数据湖探索 | 按需,16CU起步 |
| AI | ModelArts AI开发平台 | 按需GPU实例 |
| 安全 | IAM 身份认证 | 统一身份与访问管理 |
| 运营 | CES 云监控 | 基础监控+自定义指标 |
| 运营 | AOM 应用运维 | 全链路追踪+日志分析 |
| 通知 | SMN 消息通知服务 | 标准版 |
3. 参考链接
- 产品文档:
- 实施指南:
- 源代码或 IaC:
- 操作手册:
- 安全性和合规性映射:
4. 使用限制
- IoTDA标准版设备连接数有上限,超大规模场景需评估是否需要升级实例规格或分租户接入。
- Kafka消息默认保留时间有限(通常7天),需根据业务合规要求调整保留策略,长期数据需归档至OBS。
- FunctionGraph函数执行有超时限制(最长9分钟),长时间运行的任务需拆分为异步任务或迁移至CCE。
附录 A. 术语和缩略语
| 术语 | 定义 |
|---|---|
| IoTDA | IoT Device Access,华为云IoT设备接入服务,提供设备注册、连接管理和数据采集能力 |
| WAF | Web Application Firewall,Web应用防火墙,防护SQL注入、XSS等Web攻击 |
| ELB | Elastic Load Balance,弹性负载均衡,将流量分发至多个后端实例 |
| APIG | API Gateway,API网关,提供API发布、鉴权、限流和路由功能 |
| Kafka | 分布式消息队列,实现消息的异步发布与订阅 |
| CS | Cloud Stream,流计算服务,对实时数据流进行处理和分析 |
| SMN | Simple Message Notification,消息通知服务,触发事件通知 |
| CCE | Cloud Container Engine,云容器引擎,提供Kubernetes容器化应用部署 |
| FunctionGraph | 函数服务,事件驱动的无服务器计算 |
| GaussDB | 华为云数据库,支持关系型数据存储与事务处理 |
| OBS | Object Storage Service,对象存储服务,存储非结构化数据 |
| DCS | Distributed Cache Service,分布式缓存服务,提供Redis/Memcached缓存 |
| ModelArts | 华为云AI开发平台,提供模型训练、推理和管理 |
| DLI | Data Lake Insight,数据湖探索,对数据湖进行交互式分析 |
| IAM | Identity and Access Management,身份与访问管理服务 |
| CES | Cloud Eye Service,云监控服务,监控云资源运行状态 |
| AOM | Application Operations Management,应用运维管理,提供应用层监控与运维 |
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)