基于 Rust 语言编写的可编程的全球分布式 MQTT 服务器 王文庭
⽹聚云联 王⽂庭 基于边缘架构的可编程MQTT服务 CONTENTS 背景说明 O1 O2 O4 HPMQ简介 HPMQ开发说明 HPMQ未来规划 O3 1. 背景说明 物联⽹时代带来的变化 海量 连⽹ 设备 海量数据处理? 设备安全性? 共性:边缘 原来以数据中 ⼼为核⼼的云 端架构是否还 满⾜需求? 01 02 03 边缘架构 ⼀种分布式计 算架构 关的计算(处理/存储)并提 供相应的查询功能 边缘架构 物联⽹设备的纽带 2. HPMQ 简介 HPMQ是基于Rust语⾔开发的 下⼀代可编程边缘分布式 MQTT软件,主要有以下⼏个 核⼼特性: • Geo-Distributed • 可编程性 • 云边⼀体化 • 兼容异构设备 HPMQ (Hyperconverged Programmable MQTT) • 性能(C/C++/Rust) 场景:设备就近接⼊/处理 ⼀句话概括,让设备具备边缘计算的能⼒。⽬前主要提供两种接⼊⽅式: 1)设备对接内置HPMQLite程序 2)设备通过MQTT协议透明接⼊ 为什么需要可编程性 带来什么好处? 设备 程序 mqtt HPMQLite 上层MQTT Broker 设备 程序 HPMQ 上层MQTT Broker 通过边缘函数的⽅式快速兼容多⼚商 1)⾃定义协议+⾃定义函数0 码力 | 31 页 | 3.95 MB | 1 年前3openEuler 22.09 技术白皮书
相比,对高可靠内存支持更加完善。 • 内存 RAS - UCE 容错增强:支持 copy_from_user 读操作时,发生内存多 bit 错误,可以通过杀掉受影响的进程,而避 免内核复位。 • 可编程内核调度框架抢占、选核、选任务部分实现及示例。 • 基于 BPF 实现内核缓存,可以大幅提升 Redis 性能。 • 支持 AArch64 SME (Scalable Matrix Extension):ME • 模块签名支持商密算法。 可编程内核 基于 eBPF 的可编程调度框架,支持内核调度器动态扩展调度策略,以满足不同负载的性能需求,具备以下特点: 1. 标签管理机制,开放对任务和任务组进行标签标记的能力,用户和内核子系统可通过接口对特定工作负载进行标记,调 度器通过标签可以感知特定工作负载的任务。 2. 支持抢占、选核、选任务等功能点的策略扩展,可编程调度框架支持 CFS 调度类抢占,选核,选任务等功能的策略扩展, Kernel programmable framework event/map syscall/map A策略 B策略 C策略 …… 基础策略库 (.lib) 标签管理(任务/讲程/组/用户) 可编程基础库 (tools) 选核 内 存 网 络 文 件 系 统 topo_helper 选任务 调度 load_helper 负载均衡 tag_helper …… …… openEuler0 码力 | 13 页 | 1.39 MB | 1 年前3大规模高性能区块链架构设计模式与测试框架-李世敬
©2016-2021 11 公有�架构(⾮�可�架构) 应⽤层 数据层 块链式结构 账户模型 时间戳 ⽹络层 共识层 激励层 发⾏机制 分配机制 PoW PoS DPoS 可编程货币 可编程⾦融 可编程社会 合约层 智能合约脚本 算法机制 合约执⾏引擎 哈希算法 数字签名 P2P⽹络 传播机制 验证机制 默克尔树 轮胎、悬架等 基础硬件配置 电路油路 等传导系统 引擎、动⼒系统 HyperBench • 可以适配Hyperchain、Fabric等 多种不同的区块链主流平台 • 单机器性能优化 • 多压⼒机分布式可扩展 • 基于Lua脚本和虚拟机,user hook提供可编程的⽤例扩展 • 配置操作⽅便 • 脚本定制简单 • 虚拟机内置接⼝统⼀的Go区块链客 户端,可快速构建平台测试 28 趣链科技 版权所有 ©2016-2021 28 趣链科技 版权所有 ©2016-20210 码力 | 39 页 | 56.58 MB | 1 年前3openEuler 23.09 技术白皮书
在线业务不受离线业务的影响。 • 可编程调度:基于 eBPF 的可编程调度框架,支持内核调度器动态扩展调度策略,以满足不同负载的性能需求,具备 以下特点: (1) 标签管理机制:开放对任务和任务组进行标签标记的能力,用户和内核子系统可通过接口对特定工作负载进行 标记,调度器通过标签可以感知特定工作负载的任务。 (2) 抢占、选核、选任务等功能点的策略扩展:可编程调度框架支持 CFS 调度类抢占、选核、选任务等功能的策略扩展, 65ms,无法满足时延敏感型应用诉求。 底噪 istio 中,每个 sidecar 软件占用内存 50M+,CPU 默认独占 2 core,对于大规模集群底噪开销太大,降低了业务容器 的部署密度。 Kmesh 基于可编程内核,将服务治理下沉 OS,实现高性能服务网格数据面,服务间通信时延对比业界方案提升 5 倍。 • 支持对接遵从 XDS 协议的网格控制面(如 istio) • 流量编排能力 - 负载均衡:支持轮询等负载均衡策略。 程序进行加速。 功能描述 OS (ipstack + iptables) 服务 A 服务 B 服务 A 服务 B 服务治理 流量治理 流量治理 服务治理 OS (Kmesh) Kmesh 基于可编程内核,将流量治理下沉 OS,实现流量路径多跳变一跳 业界网格 : 路径过长导致时延性能 X 倍增长 Kmesh: 流量路径多跳变一跳 特性增强 20 openEuler 23.09 技术白皮书0 码力 | 52 页 | 5.25 MB | 1 年前3云计算白皮书
数据为中心过渡。当前,产业各界逐渐开始探索以数据为中心的落 地方案,如阿里云发布云基础设施处理器 CIPU,并将其定位为代替 CPU 承担云计算服务管理和加速的关键处理器;云豹智能发布云霄 DPU,提出可编程通用 DPU 框架理念,并落地多个应用场景;中科 驭数发布 DPU 芯片 K2,能够实现 1.2 微秒低时延和最高 200G 网络 带宽。 以计算为中心向以数据为中心这一过渡变化,促使算力服务形 资源提 供商之间的壁垒,形成算力资源一张网,有效促进算力资源的流动。 路由转发方面,云计算打破网络与应用的边界,支撑可编程网 络实现算力路由的精准度量。当前,云网业务模式下的算力和网络 仍然相对独立,无法完成统一交付,造成大量的资源浪费。以 SRv6 为代表的网络可编程路由技术能够将业务需求与算力信息随数据包 携带进入网络,改变了传统网络只能基于 IP 地址的转发模式,充分 发挥网络 云计算白皮书(2023 年) 35 局信息的网络转发策略,实现网络路径可视、可管、可控,提升端 到端的网络服务质量;三是增强网络内生算力,网络同时作为计算 节点保障业务数据传递效能。网络可编程能力提高了网络计算的颗 粒度,实现网络功能的快速调用,提高资源协同效率,支撑算网一 体化编排调度。 融合调度方面,云计算屏蔽基础设施架构差异,促进算力服务 实现单一资源调度跃升为跨资源协同调度。在全行业数字化转型的0 码力 | 47 页 | 1.22 MB | 1 年前32.2.1通过Golang+eBPF实现无侵入应用可观测
efficient networking, observability, tracing, and security. • 稳定 • 高性能 • 安全(内核verifier机制) • 动态可编程(无需重启) eBPF程序加载和校验 02. eBPF程序加载和校验 eBPF事件驱动 Kprobe/Kretprobe Uprobe/Uretprobe XDP Tracepoint Perf eBPF在云原生场景下的应用 第二部分 网络加速 01.网络加速 From:https://istio.io/latest/zh/blog/2022/merbridge/ eBPF 的可编程能力使其能够内核中完成包的处理和转发,而且可以添加额外扩展能力。 观测和跟踪 将 eBPF 程序附加到跟踪点以及内核和用户应用探针点的能力,使得应用程序和系统本身的 运行时行为具有前所未有的可见性0 码力 | 29 页 | 3.83 MB | 1 年前3蚂蚁金服ServiceMesh数据平面 SOFAMosn深层揭秘
ØGolang 性能,成本评估符合蚂蚁实际需求2 构架SOFAMesh 1SOFAMosn 2SOFAMosn内数据流 3NET/IO 4 Ø屏蔽IO处理细节 Ø定义网络链接生命周期,事件机制 Ø定义可编程的网络模型,核心方法,监控指标 Ø定义可扩展的插件机制PROTOCOL 5 Ø定义编解码核心数据结构 üMesh处理三段式:Headers + Data + Trailers Ø定义协议Codec核心接口 送数据 ü解码:对IO数据进行解码并通过扩展机制通知订阅方 •定义扩展机制通知解码事件STREAMING 6 Ø定义Stream模型 ü 向上确保协议行为一致性 ü 为网络协议请求/响应提供可编程的抽象载体 ü 考虑PING-PONG,PIPELINE,分帧STREAM三种典型流程特征 Ø定义Stream生命周期,核心事件 Ø定义Stream层编/解码核心接口 ü 核心数据结构复用Protocol层0 码力 | 44 页 | 4.51 MB | 5 月前3openEuler全新升级,成为数字基础设施开源操作系统
LTS版本 全场景 创新版本 2022.09 2023~ 创新版本 代码正式开源 2019.12 内核可编程,场景算力最佳 异构直连聚合,应用跨算力流转 分布式数据管理,数据共享 … 嵌入式 服务器 全场景能力 持续增强 基础能力 持续创新 南向创新 • 可编程内核 • 实时内核 北向创新 • 容器/虚机混部 openEuler DevKit • 迁移升级工具 BiSheng0 码力 | 15 页 | 1.35 MB | 1 年前307 FPGA 助力Python加速计算 陈志勇
Python 与嵌入式计算 4 Ø FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的 产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路 的不足,又克服了原有可编程器件门电路数有限的缺点。 Ø 设计语言:硬件描述语言(HDL)是一种用来设计数字逻辑系统和描述数字电路的语言,常用 的主要有VHDL、Verilog0 码力 | 34 页 | 6.89 MB | 1 年前32_FPGA助力Python加速计算_陈志勇
Python 与嵌入式计算 4 Ø FPGA(Field Programmable Gate Array)是在PAL、GAL等可编程器件的基础上进一步发展的 产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路 的不足,又克服了原有可编程器件门电路数有限的缺点。 Ø 设计语言:硬件描述语言(HDL)是一种用来设计数字逻辑系统和描述数字电路的语言,常用 的主要有VHDL、Verilog0 码力 | 33 页 | 8.99 MB | 1 年前3
共 153 条
- 1
- 2
- 3
- 4
- 5
- 6
- 16