• KubeEdge DMI 框架:设备管理面与业务面数据解耦实现方案
    KubeEdge DMI(Device Management Interface,设备管理接口)框架是 KubeEdge 面向边缘设备管理的核心抽象层,其解耦设备管理面数据(设备注册、配置、生命周期、权限、监控等管理类数据)与设备业务面数据(设备采集的业务数据、业务指令下发、实时交互数据等)的核心思路是:通过 “分层抽象、通道隔离、接口标准化、资源独立” 四大核心设计,明确两类数据的职责边界,实现传输、存储、处理全流程的解耦,确保管理面故障不影响业务面运行,业务面数据洪峰不阻塞管理面交互。一、先明确核心概念边界在 DMI 框架中,两类数据的定义和目标差异是解耦的基础:维度设备管理面数据设备业务面数据核心内容设备元数据(ID / 型号 / 状态)、配置指令(参数 / 权限)、生命周期指令(注册 / 注销 / 重启)、监控指标(在线状态 / 资源占用)设备采集的业务数据(如传感器温湿度、摄像头流数据)、业务指令(如控制电机启停)、实时交互数据(如设备告警事件)核心目标保障设备 “可管、可控、可监控”,追求可靠性和一致性保障业务数据 “实时、高效、低延迟” 传输,追求吞吐量和实时性传输要求低带宽、高可靠(不能丢失)、低频次高带宽、低延迟、高频次(可能突发)DMI 框架的解耦设计完全围绕上述差异展开,核心是 “让管理面专注管理,业务面专注业务”。二、DMI 框架解耦的核心实现机制1. 架构分层:抽象隔离管理 / 业务逻辑(核心基础)DMI 框架通过三层抽象架构,从代码和逻辑层面彻底隔离管理面与业务面,每层职责边界清晰,互不依赖:┌─────────────────────────────────────────────────┐ │ 云端层(K8s 集群) │ │ ├─ 管理面:Device/DeviceModel CRD 控制器 │ │ │ (处理设备注册、配置下发、状态同步) │ │ └─ 业务面:业务应用/数据服务(消费设备业务数据) │ ├─────────────────────────────────────────────────┤ │ 边缘 DMI 抽象层(核心解耦层) │ │ ├─ 管理面接口:Device Management API │ │ │ (标准化管理指令的编解码、传输、回执) │ │ ├─ 业务面接口:Device Data API │ │ │ (标准化业务数据的采集、下发、格式转换) │ │ └─ 驱动适配层:统一对接底层设备驱动 │ ├─────────────────────────────────────────────────┤ │ 设备层 │ │ ├─ 管理面:设备管理代理(处理管理指令) │ │ └─ 业务面:设备数据采集/执行模块(处理业务交互)│ └─────────────────────────────────────────────────┘   管理面逻辑:聚焦 “设备生命周期管理”,由 DMI 的 Device Management API 承接,对接 KubeEdge 云端的 Device CRD 控制器,仅处理设备注册、配置更新、状态上报等管理指令,不涉及任何业务数据处理;业务面逻辑:聚焦 “设备数据交互”,由 DMI 的 Device Data API 承接,对接边缘业务应用(如工业物联网平台、传感器数据分析服务),仅处理业务数据采集、指令下发,不依赖管理面的 CRD 同步逻辑;驱动适配层:DMI 定义标准化的驱动接口,要求设备驱动同时实现 “管理接口” 和 “业务接口”,但两类接口的实现逻辑完全独立(比如驱动中管理接口处理设备参数配置,业务接口处理传感器数据读取),上层调用互不干扰。2. 数据通道:物理隔离传输链路(关键保障)DMI 框架基于 KubeEdge 现有通信架构,为管理面和业务面数据分配独立的传输通道,避免互相抢占资源:(1)云端 - 边缘通道隔离KubeEdge 核心通信组件(CloudHub/EdgeHub)为 DMI 框架提供两类通道:管理面通道:基于 MQTT/HTTP 协议,使用专属 Topic 前缀(如 $hw/events/device/management),传输管理指令(如设备注册请求、配置更新指令)和管理状态(如设备在线状态、配置执行结果);特性:启用 QoS 1(至少一次送达),保障管理指令不丢失;通道带宽限制(如单条指令≤1KB),避免占用过多资源;业务面通道:基于 MQTT/QUIC/gRPC 协议,使用专属 Topic 前缀(如 $hw/events/device/data),传输业务数据(如传感器批量采集数据、视频流切片)和业务指令(如控制指令);特性:支持 QoS 0/1 可配置(业务数据可容忍少量丢失),支持大报文分片传输(如单条业务数据≤10MB),通道优先级低于管理面(确保管理指令优先传输)。(2)边缘 - 设备通道隔离在边缘节点内部,DMI 框架通过 “本地总线隔离” 实现边缘代理(edged/device-edge-mapper)与设备的通信隔离:管理面:通过边缘本地的 “管理总线”(如 Unix Domain Socket)传输管理指令,仅占用极小的本地资源,即使业务面数据量暴增,也不会阻塞管理指令的下发 / 上报;业务面:通过边缘本地的 “业务总线”(如 MQTT Broker、Modbus TCP、OPC-UA)传输业务数据,支持高并发,且业务总线故障(如拥塞)不会影响管理总线的可用性。3. 接口标准化:解耦上层调用与底层实现DMI 框架定义了完全独立的管理面接口和业务面接口,两类接口的参数、返回值、异常处理逻辑互不依赖,上层应用 / 云端仅需调用标准化接口,无需感知底层设备的协议差异,同时实现 “接口级解耦”:(1)管理面标准化接口(核心为 CRUD + 生命周期)  // DMI 管理面接口示例(简化) service DeviceManagement { // 设备注册(管理面核心指令) rpc RegisterDevice(RegisterRequest) returns (RegisterResponse); // 设备配置更新(如修改管理IP、权限) rpc UpdateDeviceConfig(ConfigRequest) returns (ConfigResponse); // 设备状态查询(管理面核心监控) rpc GetDeviceStatus(StatusRequest) returns (StatusResponse); // 设备注销(生命周期管理) rpc UnregisterDevice(UnregisterRequest) returns (UnregisterResponse); } 这类接口仅处理设备元数据和管理指令,参数轻量、逻辑简单,不涉及任何业务数据字段。(2)业务面标准化接口(核心为数据采集 / 指令下发)    // DMI 业务面接口示例(简化) service DeviceData { // 业务数据采集(如传感器数据上报) rpc CollectData(CollectRequest) returns (CollectResponse); // 业务指令下发(如控制设备执行动作) rpc SendCommand(CommandRequest) returns (CommandResponse); // 业务数据订阅(边缘应用实时消费) rpc SubscribeData(SubscribeRequest) returns (stream DataResponse); }这类接口聚焦业务数据交互,支持流式传输、批量上报,可适配不同设备的业务数据格式,但不涉及任何设备管理逻辑。4. 资源隔离:边缘节点内的运行时隔离在边缘节点上,DMI 框架将管理面和业务面的处理逻辑部署为独立的进程 / 容器,实现 CPU、内存、网络资源的隔离,避免一方资源耗尽影响另一方:管理面组件:如 device-controller(边缘设备管理控制器)、management-agent(管理代理),运行在低资源占用的独立容器中,设置资源上限(如 0.1 CPU、128MB 内存),优先级高于业务面组件;业务面组件:如 data-collector(数据采集器)、command-executor(指令执行器),运行在独立容器中,资源上限可动态调整(如 1 CPU、1GB 内存),优先级低于管理面;资源调度规则:KubeEdge 边缘调度器(edged)确保管理面组件的资源优先分配,即使业务面组件因数据突发耗尽资源,管理面仍能正常运行(如下发 “重启业务组件” 的管理指令)。5. 存储分离:管理 / 业务数据分库存储DMI 框架要求两类数据的存储完全独立,避免存储层耦合:管理面数据:存储在边缘节点的轻量级数据库(如 SQLite、ETCD 边缘节点),仅保存设备元数据、配置、状态等小体量数据,云端同步到 K8s ETCD;业务面数据:存储在边缘的时序数据库(如 InfluxDB、TDengine)或对象存储(如 MinIO),专门适配高频、大体积的业务数据,支持数据压缩、过期清理,不与管理面数据共用存储;存储故障隔离:业务面存储故障(如磁盘满)不会导致管理面数据丢失,管理面存储仅保存核心元数据,容错性更高。6. 故障隔离:异常处理互不影响DMI 框架设计了独立的异常处理机制,确保一类数据的异常不会扩散到另一类:管理面异常:如管理指令下发失败,仅触发管理面重试逻辑(如间隔 5s 重试,最多 3 次),不影响业务面数据采集 / 下发;业务面异常:如业务数据上报拥塞,DMI 框架会缓存业务数据(边缘本地临时存储),并降低业务面通道的传输速率,但管理面通道仍保持满速传输,确保管理指令优先送达;设备侧异常:如设备业务模块故障,DMI 管理面仍能通过设备管理代理获取 “业务模块故障” 的状态,并下发 “重启设备业务模块” 的管理指令,无需中断设备整体运行。三、解耦流程示例(设备配置更新 + 业务数据采集)以 “修改设备管理 IP(管理面)+ 采集传感器数据(业务面)” 为例,直观展示解耦效果:管理面操作:云端管理员修改 Device CRD 中的设备管理 IP 配置;配置通过 “管理面通道”(CloudHub→EdgeHub→管理总线)下发到边缘管理代理;管理代理更新设备管理 IP,将执行结果通过管理面通道上报云端;全程不涉及任何业务数据,即使配置下发过程中业务面正在采集数据,也无任何干扰。业务面操作:设备传感器采集温湿度数据,通过 “业务面通道”(设备→业务总线→数据采集器)上报到边缘时序数据库;边缘业务应用消费数据并分析,即使数据量暴增(如每秒 1000 条),也不会占用管理面通道的带宽;若业务面通道拥塞,管理面仍能正常下发 “调整业务面通道带宽” 的管理指令。四、解耦的核心价值可靠性提升:管理面不受业务面数据突发影响,即使自动化脚本误配置业务参数,也不会导致设备管理通道中断(如远程登录失败);扩展性增强:新增业务数据类型(如视频流)仅需扩展业务面接口和存储,无需修改管理面逻辑;新增管理功能(如设备权限管控)仅需扩展管理面接口,不影响业务数据传输;运维便捷:管理面故障仅需排查管理组件(如 CRD 同步、管理通道),业务面故障仅需排查数据采集 / 存储,定位范围大幅缩小;资源优化:管理面占用极小资源即可保障设备可控,业务面资源可按需弹性分配,提升边缘节点资源利用率。总结一下下KubeEdge DMI 框架通过 “架构分层抽象、传输通道隔离、接口标准化、运行时资源隔离、存储分离、故障隔离” 六大核心机制,实现了设备管理面与业务面数据的全流程解耦。核心逻辑是 “让管理面专注设备可控性,业务面专注数据实时性”,既保障了设备远程管理的稳定性(即使业务配置出错,管理通道也不中断),又满足了业务数据的高效传输需求,完全适配边缘场景下 “管理不中断、业务不卡顿” 的核心诉求。
  • [热门活动] 【活动已结束】微认证上新免费激活,通过抽好礼
    【获奖公示—微认证上新免费激活,通过抽好礼活动】一、获奖公示详情如下:【通过活动指定任意1门微认证抽奖公示】:见本论坛贴附件,PC端下载后查看;二、公示时间:2025年12月18日—2025年12月22日(含),若有疑问请在该时间段反馈,逾期视为放弃奖励!三、考证数据统计周期:2025.12.4—2025.12.17,微认证需要在活动期间内首次通过且生成证书四、奖品发放:所有奖励将于活动公示期后陆续安排发放 【活动时间】2025年12月4日—2025年12月17日【报名入口】cid:link_12【活动福利】福利1:微认证上新免费激活,不限次数反复考;:福利2:通过指定任意1门微认证抽奖,抽华为耳机、开发者定制双肩包、云宝盲盒、定制雨伞、定制帆布袋等好礼;活动指定微认证(微认证必须在活动期间内首次通过且生成证书才可以)序号认证名称(含免费激活入口)1运用昇思MindSpore框架成为垃圾分类小能手2DeepSeek+AI辅助编程工具Cline自动化游戏开发3使用DeepSeek实现代码自动生成4基于DeepSeek搭建Agent智能助手5电商数据迁移:MySQL到GaussDB的奇幻之旅6基于FunctionGraph的画图应用部署实践7基于MCP实现知识图谱RAG8秒级创建鲲鹏工程进行原生开发9利用鲲鹏DevKit剖析Java死锁问题的性能分析实践10鲲鹏DevKit完成C与C++源码迁移实战11鲲鹏BoostKit之MongoDB调优实践12基于鲲鹏BoostKit的Web性能优化实战 点击前往活动页,可查看活动详细信息!下载华为云APP,利用碎片化时间随时随地学习各领域热门认证课程,实现技术提升!
  • [技术干货] Ascend>ACLLite>Media模块API说明
    请查阅参考昇腾社区文档:https://gitee.com/ascend/ACLLite/blob/master/Doc/media.md 
  • [技术干货] Ascend>ACLLite>OMExcute模块API说明
    请查阅参考昇腾社区文档:https://gitee.com/ascend/ACLLite/blob/master/Doc/omexcute.md 
  • [技术干货] Ascend>ACLLite>DVPPLite模块API说明
    请查阅参考昇腾社区文档:https://gitee.com/ascend/ACLLite/blob/master/Doc/dvpplite.md 
  • [技术干货] Ascend>ACLLite>common模块API说明
    请查阅参考昇腾社区文档:https://gitee.com/ascend/ACLLite/blob/master/Doc/common.md 
  • [技术干货] Ascend> MindSpeed-LLM>基于昇腾芯片开启确定性计算
    请查阅参考昇腾社区文档:https://gitee.com/ascend/MindSpeed-LLM/blob/2.1.0/docs/pytorch/features/deterministic_computation.md 
  • [技术干货] Ascend> MindSpeed-LLM>基于昇腾芯片采集 profiling 数据
    请查阅参考昇腾社区文档:https://gitee.com/ascend/MindSpeed-LLM/blob/2.1.0/docs/pytorch/features/profiling.md 
  • [产品体验官] 华为云开发者空间走进湖南软件职业技术大学
    华为开发者空间走进湖南软件职业技术大学一、方案核心目标  依托湖南软件职业技术大学软件工程、人工智能等优势学科基础,结合学校省级众创空间、产教融合型企业等平台资源,通过精准化线下活动与本土化推广,达成三大目标:一是深化师生对华为开发者空间核心能力的认知,重点传递鸿蒙开发、AI建模等契合职业教育需求的技术价值;二是推动实践转化,提升平台注册率与实训项目完成率,助力"课赛创"一体化人才培养;三是搭建校企协同桥梁,为学校与华为生态的长效合作奠定基础,拓宽学生就业与创新路径。 二、线下活动策划方案(一)活动主题"根技术赋能·强实践创新——华为开发者空间校园实训日"(二)活动对象与规模核心对象:软件工程学院、人工智能学院本科及专科生(重点覆盖软件技术、人工智能工程技术等专业),相关专业"双师型"教师,校级科技社团骨干。规模设置:单场规模120-150人,其中学生100-120人、教师15-20人,适配学校实训场地承载能力。(三)活动流程设计1.签到与预热(9:00-9:30):在学校数字经济孵化基地设置签到处,布置鸿蒙分布式架构、AI建模流程等技术展板;安排志愿者协助完成华为开发者账号预注册,发放融合学校课程体系的技术手册与定制周边。2.主题分享(9:30-10:30):邀请华为云校园大使主讲,内容聚焦三大模块:开发者空间核心功能(含180小时免费算力等学生专属权益)、鸿蒙应用开发与AI Agent开发等前沿技术、华为ICT大赛与耀星计划申报指南,结合职业院校学生开发案例解析落地路径。 3.分轨深度解析(10:40-11:40):设置双平行会场,匹配不同群体需求:学生专场:侧重技能实操,详解"基础学习-项目实训-竞赛备赛"全流程,重点演示基于空间的软件测试、Web前端开发实战方法。教师专场:聚焦教学融合,介绍"课程内容与华为技术同步"的实现方案,分享将空间资源转化为实训课题的设计思路。  三、全渠道推广方案(一)精准触达渠道1.院系定向渗透:联合软件工程学院、人工智能学院发布官方通知,将活动纳入实践教学学分认定范围;通过专业教研室群推送活动详情,组织教师动员核心班级参与。2.社团联动推广:依托学校华为开发者联盟、计算机协会等社团开展预热宣讲,在实训楼、食堂等学生密集区设置体验摊位,推出"注册领流量+组队享优先指导"福利。(二)内容传播矩阵1.预热期(活动前1周):发布"3分钟玩转华为开发者空间"短视频,解读与软件技术、大数据等专业的适配点;推出"学长说"系列图文,邀请参加过ICT大赛的学生分享经验。2.活动期(当天):安排校园记者团队进行图文直播,实时分享实操场景与干货要点;发起#华为开发者空间校园实训日#话题,鼓励师生分享体验,联动学校官微转发互动。3.后续期(活动后3天):整理实操视频回放与PPT课件,通过研习社社群定向推送;发布活动总结,公示迷你开发赛进度,开放线上答疑通道持续引流平台实操。
  • [技术干货] 华为开发者空间,让根技术开发触手可及
    在数字化转型、技术创新与科技自立的驱动下,企业研发正面临工具链碎片化、算力资源不足、跨地域协作效率低、安全合规压力大、创新成本高企等多重痛点。华为开发者空间依托华为30多年研发实践沉淀,整合昇腾、鸿蒙、鲲鹏、GaussDB、欧拉等根技术生态,提供 “云开发环境+全流程工具链+行业解决方案”一体化服务,已助力多个行业企业实现智研创新,实现从技术创新到商业价值的闭环落地。华为开发者空间是什么?华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了昇腾、鸿蒙、鲲鹏、GaussDB、欧拉等华为根技术资源及工具,支持桌面、容器、CLI等多种方式进行云上开发;开发者空间整合云上AI开发工具链,一键开发AI Agent、部署MCP并提供配套技术案例,打造开发者智能AI应用开发平台。立足于开发者的体验提升,华为开发者空间从工具与资源的易获取性、开发效率与易用性、学习与成长支持、国产信创适配、开源框架对接、及协同编程六大维度进行深度优化,实现更多入口、更快拉起、更多权益、更好的体验。通过技术赋能与生态贡献,成为广大开发者的技术同行partner。一、工具与资源的易获取性华为开发者空间以全栈集成、免费赋能、多端协同为核心,构建了无壁垒的开发资源体系。(1)在工具链集成方面:平台整合了CodeArts IDE、ModelArts Studio、AI Notebook、Astro低代码平台等核心工具,覆盖从代码编写、调试、测试到AI模型训练、部署的全流程开发场景。其中,CodeArts IDE预置鸿蒙、昇腾专属开发环境,开发者无需手动配置,即可一键拉取代码仓并开展远程调试,大幅减少环境适配成本;Astro低代码平台则以可视化拖拽能力,为业务型开发者提供快速构建应用的捷径。(2)为降低开发门槛:平台推出了免费资源包:180小时云开发环境、100万次云函数调、鸿蒙云手机、云数据库、MaaSTokens、2小时免费AI Notebook等基础权益免费开放,让个人开发者与初创团队无需投入额外成本即可开展项目研发。同时,免费开放昇腾NPU算力,支持AI推理任务高效运行,例如DeepSeek-R1模型部署仅需1-2分钟即可启动,为AI开发者提供了低成本的算力支撑。【乐知行企业案例】基于华为开发者空间的车路云监控中心:智能网联小车实时数据可视化系统实现企业背景:乐知行是专注智能网联教学解决方案的科技企业,服务百余所高校,核心需求是解决教学场景中算力不足、POC验证效率低、品牌影响力弱等问题。核心痛点:高性能算力资源短缺、教学环境部署复杂、品牌信任度建立难。华为开发者空间赋能实践:①基于华为开发者空间的AI Notebook与鲲鹏云开发环境,乐知行构建了“车路云监控中心”教学平台,实现智能网联小车深度学习模型的快速训练与调试;②通过华为开发者空间的云端协同能力,将车、路、云三端数据实时上传至鲲鹏云环境,学生可在本地监控远程车辆状态、交通信息,实现“车路云一体化”的实训体验;③受邀参与华为全联接大会展示,通过多车辆实操体验环节触达国内外客户,同步将案例上架华为开发者空间案例中心,获取精准教育行业流量。点击查看:cid:link_3二、开发效率与易用性华为开发者空间以AI原生能力为驱动,通过智能辅助、极简化配置、自动化流程,大大提升开发效率。(1)在AI赋能方面:CodeArts代码智能体能够实现代码生成、语法纠错、单元测试自动生成等功能,使开发效率提升40%左右,让开发者从重复性工作中解放出来专注于核心逻辑创新;Astro支持拖拽式开发,业务用户可快速构建应用,如登录页开发周期从小时级缩短至分钟级,极大降低了应用开发的技术门槛。(2)环境配置极简化:环境配置的繁琐是长期困扰开发者的痛点,华为开发者空间通过预置镜像与一键部署功能,将环境搭建速度从小时级降至秒级。平台提供鲲鹏、昇腾等多种开发镜像,开发者可根据项目需求一键创建沙箱环境;针对鸿蒙开发场景,平台提供鸿蒙云手机沙箱,支持远程调试与适配测试,配合专属迁移工具链,可降低50%的适配成本。(3)自动化流程支持:平台深度集成DevOps能力,通过自动化流水线实现构建、测试、部署全流程自动化,减少人工干预,提升开发交付的稳定性与效率。(4)平台支持Web、CLI、IDE多入口访问:开发者可通过本地 IDE远程连接云端环境,实现跨设备、跨场景的无缝开发体验,打破空间与设备的限制。【毕昇企业案例】华为开发者空间部署BISHENG平台实现DeepSeek vs GLM终极AI辩论赛企业背景:BISHENG是面向AI智能体与大模型应用的平台型企业,核心需求是降低技术门槛、快速触达开发者群体,实现AI能力的商业化落地。核心痛点:缺少技术、商业、市场和持续服务。需要稳定易用的算力底座和模型服务,触达更广泛的开发者群体,最终共同赢得企业开发者和商业变现。华为开发者空间赋能实践:①实现低代码平台+开箱即用环境,向伙伴提供稳定、高性能的底层算力支持和大模型;②合作完成案例,依托华为开发者空间的云主机部署能力,BISHENG平台实现了 “40分钟极速构建AI辩论应用”的高效落地;③生态资源联动,借助华为开发者空间的开发者社区、HC大会等生态资源,BISHENG实现单场活动触达开发者5000+,显著提升品牌影响力与开发者覆盖度。点击查看:cid:link_0三、学习与成长支持华为开发者空间构建了“学习-实践-交流”全周期成长体系,助力开发者持续提升核心竞争力。(1)在学习资源方面:开发者学堂汇聚了1500+门精品课程,涵盖昇腾AI、鸿蒙操作系统、云原生等前沿技术领域,课程内容从基础入门到高阶实战层层递进,配合免费认证代金券,让开发者能够零成本获取专业认证,夯实技术基础。其中AI科研系列课程聚焦模型调优、RAG技术等实战内容,为开发者提供了贴合产业需求的学习路径。(2)在实践赋能方面:华为开发者空间以“降低实践门槛、提升验证效率”为核心,打造了覆盖多技术领域、多应用场景的700+高性能沙箱环境,为开发者提供“开箱即用、按需配置、安全隔离”的一站式实践支撑,让技术验证、项目开发与场景测试无需受限于本地硬件与环境配置,全程高效顺畅。(3)行业案例模板:平台案例中心提供70+个行业解决方案模板,涵盖智能客服、数据看板、工业互联网等多个领域,开发者可直接复用成熟案例的核心代码与架构设计,加速项目落地进程。同时,平台通过HCSD校园沙龙、技术峰会、线上研讨会等多种形式搭建了连接高校与产业、开发者与专家的交流桥梁,促进技术经验的分享与碰撞。(4)支持高校人才培养: 华为开发者空间深度联动教育场景,以“课程赋能+实验赋能”双轮驱动,构建“理论学习-实践操作-能力转化”的完整培养体系,将华为根技术生态与高校人才培养需求精准对接,助力高校打造兼具技术前沿性与产业适配性的人才培育模式,为青年开发者筑牢成长根基。  【南京大学案例】华为开发者空间携手南京大学,打造教学课程与新技术融合创新模式华为开发者空间携手南京大学,基于文理交融特色探索创新模式,把开发者空间融入南大学子课程与实践环节。聚焦 AI、鸿蒙、昇腾等前沿根技术,借校企优质师资合力,让南大学子在课堂解锁多元实践场景,以跨学科实践赋能科技人才创新能力跃升。软件学院开展《计算机操作系统》课程,将原课程基于华为开发者空间云主机的课程实践进行重构。该课程面向软件工程专业大二学生,培养其理解和应用操作系统的能力,特别是开发与操作系统交互的底层软件的能力。点击查看: cid:link_4四、国产信创适配在合规性方面:华为开发者空间已向开发者发放150万+台云主机,支持开发者基于鲲鹏环境进行鲲鹏应用开发,助力开发者构建安全合规、高效稳定的信创应用,满足国产化开发核心需求。五、开源框架对接(1)代码仓互通:平台支持从GitHub、GitCode等主流开源平台一键拉取开源项目,预置编译测试环境,开发者无需手动配置依赖,即可快速开展二次开发与技术验证,加速开源技术的落地应用。通过开源生态的深度对接,华为开发者空间构建了“开源-复用-创新-回馈”的良性循环,为开发者提供了丰富的开源资源与实践机会。(2)开源社区激励:华为开发者空间以开源生态共建为核心,通过激励机制与资源互通,赋能开源开发者与项目成长。平台推出“沃土云创开源计划”,参与昇腾、鸿蒙等开源项目的开发者提供最高200万的激励支持,鼓励开发者贡献代码、参与项目迭代,共同完善开源生态。【GitCode企业案例】基于华为开发者空间项目同步能力实现java电商项目部署企业背景:GitCode是代码托管与开源生态平台,核心需求是补充云端开发能力,实现代码托管与开发环境的无缝衔接。核心痛点:本地开发环境配置复杂、云端开发工具链缺失、开发者工作流中断。华为开发者空间赋能实践:①华为开发者空间与GitCode深度集成,实现“代码托管+云端开发”的全链路打通,开发者通过GitCode项目页面,可一键调用华为开发者空间的云开发环境,实现代码的云端编译、调试与运行,提升开发效率;②智能项目同步,通过华为开发者空间的项目同步能力,GitCode仓库可一键同步至云端主机,支持开发者直接在云端进行代码阅读、修改与调试;③依托华为开发者空间的开发者社区与流量资源,GitCode的用户活跃度得到大幅提升,同时实现开源项目的“一键云上部署”,降低开源成果的落地门槛。点击查看:cid:link_1六、协同编程多角色适配:不同类型、不同场景的开发者有着差异化的需求,华为开发者空间通过多角色适配与全球化服务,提供个性化的开发体验。针对个人开发者,平台提供基础会员免费资源包,支持轻量化开发、学习实践等核心需求,满足个人项目研发与技术探索的诉求;针对企业开发者,企业会员可享受专属技术支持、定制化解决方案与销售咨询服务,适配团队协作、大型项目研发等复杂场景,助力企业提升研发效率与创新能力。总结华为开发者空间不仅是一站式“开发工具平台”,更是“企业级研发生态的基建伙伴”——从工具资源的无缝供给到AI赋能的效率革新,从全周期的成长支持到安全合规的坚实保障,再到开源生态的共建共享与个性化的体验适配,华为开发者空间以多维度的优化升级,重新定义了开发者服务的核心价值。未来,华为开发者空间将持续深耕技术创新与生态共建,以更优质的服务、更丰富的资源、更便捷的体验,成为全球开发者成长路上的同行者与赋能者,共同推动技术创新与产业升级。
  • [技术干货] Ascend> MindSpeed-LLM>微调(ShareGPT风格)
    请查阅参考昇腾社区文档:https://gitee.com/ascend/MindSpeed-LLM/blob/2.1.0/docs/pytorch/solutions/finetune/datasets/sharegpt_dataset.md 
  • [技术干货] Ascend> MindSpeed-LLM>微调(Alpaca风格)
    请查阅参考昇腾社区文档:https://gitee.com/ascend/MindSpeed-LLM/blob/2.1.0/docs/pytorch/solutions/finetune/datasets/alpaca_dataset.md 
  • [技术干货] Ascend> MindSpeed-LLM>预训练
    请查阅参考昇腾社区文档:https://gitee.com/ascend/MindSpeed-LLM/blob/2.1.0/docs/pytorch/solutions/pretrain/pretrain_dataset.md 
  • [技术干货] Ascend> MindSpeed-LLM>yarn上下文扩展
    请查阅参考昇腾社区文档:https://gitee.com/ascend/MindSpeed-LLM/blob/2.1.0/docs/pytorch/features/yarn.md 
  • Mybatis与GaussDB
    MyBatis 完全支持 GaussDB(包括华为云 GaussDB、openGauss),核心原因是:GaussDB 兼容主流数据库协议(PostgreSQL 或 MySQL 协议),而 MyBatis 作为 ORM 框架,不直接依赖数据库本身,仅通过 JDBC 驱动 与数据库交互 —— 只要 GaussDB 提供标准 JDBC 驱动,MyBatis 就能无缝适配,无需额外修改框架源码。一、支持的核心逻辑MyBatis 的核心是 “通过 SQL 映射与 JDBC 连接数据库”,其适配性取决于:GaussDB 提供兼容 JDBC 规范的驱动(华为云 GaussDB、openGauss 均提供官方 JDBC 驱动);GaussDB 兼容标准 SQL 语法(或 PostgreSQL/MySQL 语法),MyBatis 的 SQL 映射、动态 SQL、结果映射等功能均可正常使用。无论是华为云托管的 GaussDB(如 GaussDB (for PostgreSQL)、GaussDB (for MySQL)),还是开源的 openGauss,MyBatis 都能完美支持。二、MyBatis 集成 GaussDB 的实操步骤以 Spring Boot + MyBatis + 华为云 GaussDB (for PostgreSQL) 为例(openGauss 配置完全一致,仅驱动和 URL 略有差异):1. 引入依赖(Maven)核心依赖包括:MyBatis 核心包、Spring Boot 整合 MyBatis starter、GaussDB JDBC 驱动。<!-- 1. Spring Boot 整合 MyBatis 依赖 --><dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.3.2</version> <!-- 适配 Spring Boot 版本,建议用稳定版 --></dependency><!-- 2. GaussDB JDBC 驱动(华为云 GaussDB/开源 openGauss 通用) --><!-- 华为云 GaussDB 推荐用官方驱动 --><dependency> <groupId>com.huawei.gaussdb</groupId> <artifactId>gaussdb-jdbc</artifactId> <version>1.0.1</version> <!-- 需与 GaussDB 版本匹配,参考官方文档 --></dependency><!-- 若为 openGauss,也可使用开源驱动 --><!-- <dependency> <groupId>org.opengauss</groupId> <artifactId>opengauss-jdbc</artifactId> <version>3.1.0</version></dependency> --><!-- 3. 数据库连接池(可选,推荐 HikariCP,Spring Boot 2.x+ 默认集成) --><dependency> <groupId>com.zaxxer</groupId> <artifactId>HikariCP</artifactId></dependency> 2. 配置数据源(application.yml)关键配置:JDBC 驱动类、连接 URL、用户名密码(GaussDB 的 URL 格式与 PostgreSQL 类似)。spring: datasource: # 1. GaussDB JDBC 驱动类(华为云 GaussDB 和 openGauss 通用) driver-class-name: org.postgresql.Driver url: jdbc:postgresql:// username: your-username password: your-password # 3. 连接池配置(HikariCP) hikari: maximum-pool-size: 10 minimum-idle: 2 connection-timeout: 30000# MyBatis 配置(可选,根据需求调整)mybatis: mapper-locations: classpath:mapper/*.xml # Mapper 映射文件路径 type-aliases-package: com.example.entity # 实体类别名包 configuration: map-underscore-to-camel-case: true # 下划线转驼峰(如 user_name → userName) log-impl: org.apache.ibatis.logging.stdout.StdOutImpl # 打印 SQL 日志(调试用)注意一下下:如果 GaussDB 是 “兼容 MySQL 协议” 的版本(如 GaussDB (for MySQL)),驱动类和 URL 需调整为 MySQL 格式:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql:// 驱动类也可使用 GaussDB 专属驱动 com.huawei.gaussdb.jdbc.Driver(华为云推荐),URL 格式不变。3. 编写 Mapper 接口与 XML 映射文件与操作 MySQL、PostgreSQL 完全一致,MyBatis 的所有功能(动态 SQL、分页、结果映射等)均可正常使用。实体类 User.javapublic class User { private Long id; private String userName; // 对应数据库 user_name 字段(下划线转驼峰生效) private Integer age; // getter/setter 省略}Mapper 接口 UserMapper.java@Mapperpublic interface UserMapper { // 新增用户 int insert(User user); // 根据 ID 查询用户 User selectById(Long id); // 动态 SQL:条件查询 List<User> selectByCondition(@Param("userName") String userName, @Param("age") Integer age);}Mapper 映射文件 UserMapper.xml、<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.example.mapper.UserMapper"> <!-- 新增用户 --> <insert id="insert" parameterType="com.example.entity.User"> INSERT INTO user (user_name, age) VALUES (#{userName}, #{age}) </insert> <!-- 根据 ID 查询 --> <select id="selectById" parameterType="java.lang.Long" resultType="com.example.entity.User"> SELECT id, user_name, age FROM user WHERE id = #{id} </select> <!-- 动态 SQL 条件查询 --> <select id="selectByCondition" resultType="com.example.entity.User"> SELECT id, user_name, age FROM user <where> <if test="userName != null and userName != ''"> AND user_name LIKE CONCAT('%', #{userName}, '%') </if> <if test="age != null"> AND age = #{age} </if> </where> </select></mapper>4. 测试验证编写测试类,验证 MyBatis 能否正常操作 GaussDB:@SpringBootTestpublic class UserMapperTest { @Autowired private UserMapper userMapper; @Test public void testInsertAndSelect() { // 新增用户 User user = new User(); user.setUserName("test"); user.setAge(25); userMapper.insert(user); // 查询用户 User result = userMapper.selectById(1L); System.out.println(result.getUserName()); // 输出 "test",说明集成成功 }}三、注意下哦驱动版本匹配:GaussDB 驱动版本需与数据库版本对应(如 openGauss 3.x 对应驱动 3.x 版本),否则可能出现连接失败、SQL 执行异常等问题,建议参考 华为云 GaussDB 官方文档 或 openGauss 文档 选择驱动。SQL 兼容性:GaussDB 兼容 PostgreSQL 或 MySQL 的 SQL 语法,MyBatis 中的标准 SQL、动态 SQL 均可直接使用;若使用 GaussDB 特有语法(如分区表、并行查询),需在 XML 中直接编写对应 SQL,MyBatis 无额外限制。分页插件支持:MyBatis-Plus、PageHelper 等分页插件同样支持 GaussDB,只需在插件配置中指定数据库类型为 postgresql(兼容 GaussDB): # PageHelper 配置示例pagehelper: helper-dialect: postgresql reasonable: true  事务支持:Spring 声明式事务(@Transactional)完全兼容 GaussDB,无需额外配置,事务隔离级别、传播行为等遵循 JDBC 标准。总结一下下MyBatis 对 GaussDB 的支持是 “无缝适配” 的,本质是通过 GaussDB 提供的 JDBC 驱动实现连接,MyBatis 的所有核心功能(SQL 映射、动态 SQL、分页、事务等)均可正常使用。
总条数:1950 到第
上滑加载中