Rust HTTP 协议栈在终端通信场景的实践 - 胡凯第三届中国Rust开发者大会 Rust HTTP 协议栈在终端通信场景的实践 胡凯 hukai45@huawei.com 华为 公共开发部 嵌入式软件能力中心 什么是 HTTP 协议? ⚫ HTTP 协议介绍 目录 终端场景下 HTTP 协议的主要使用场景,以及需要思考的问题。 ⚫ 终端 HTTP 通信场景浅析 我们当前结合 Rust 和终端通信场景的实践的简单介绍。 ⚫ Rust Rust 与 HTTP 协议栈结合的业界实现。 ⚫ Rust 与 HTTP 协议 HTTP 协议介绍 Part 01 什么是 HTTP 协议? Rust China Conf 2022 – 2023, Shanghai, China Rust China Conf 2022 – 2023, Shanghai, China HTTP 协议介绍 HTTP 协议,即超文本传输协议(HyperText 和超媒体 信息系统的应用层协议。 HTTP 是一个客户端(用户)和服务端(网站)之间请求和应答的标准。 Rust China Conf 2022 – 2023, Shanghai, China HTTP 协议介绍 HTTP 协议主要具有以下特点: ✓ 支持客户/服务器模式。 ✓ 简单快速:客户向服务器请求服务时,只需传送 请求方法、路径和请求头。HTTP 协议简单、HTTP 服务器的程序规模小,因而通信速度很快。0 码力 | 26 页 | 1.25 MB | 1 年前3
在Solana合约链实现IBC协议跨链互操作 - 苏胤榕@DaviRain 在Solana合约链 实现IBC协议跨链互操作 简单介绍下IBC协议是什么,及其生态 简介 > 介绍IBC协议和其在跨链互操作中的作用 IBC协议中的角色和参与者 1. 客户端 2. 连接 3. 通道 4. 包 4. 中继器 解释为什么选择在Rust合约链中实现IBC协议 - IBC协议的核心已经被协议核心团队用Rust语言实现。 - 对于本身就是 对于本身就是使用Rust语言作为智能合约开发的区块链 平台来说,支持集成支持IBC协议会很方便。 - 这里优先构想了在Solana链上实现IBC协议,因为 Solana平台本身极 低的gas消耗,很适合我现在构思 的这套实现方案。(后面会做解释) 引入Solana作为示例平台 - Solana极低的Gas花销。 - Anchor合约开发框架,大大降低了Rust合 约开发者在Solana上开发智能合约的难度。 - 以及本人对Solana平台的喜欢,优先考虑 了Solana平台,但是这套方案是可以推广到 任何的Rust智能合约平台的。 大致讲解下IBC协议的原理, 以及参与整个IBC协议活动的不同决策 IBC协议概述> 详细介绍IBC协议的基本概念和原理 Connection创建原理 Connection创建OpenInit Connection创建OpenTry Connection创建OpenAck0 码力 | 29 页 | 3.05 MB | 1 年前3
简谈 Rust 与国密 TLS - 王江桐Implementing Cryptographic Algorithms and Protocols #3 Rust 实现密码与安全协议的优势与现状 Introduction to Shangmi Algorithms and Protocols #2 国密算法与协议介绍 Huawei Ylong Rust Cryptographic Framework #4 华为 Ylong Rust 密码库 需要《使用境外生产 的密码产品准用证》 中国法人、组织、公民 境内 可以使用 境外 不得使用 国密算法与协议介绍 Introduction to Shangmi Algorithms and Protocols Section #2 • 国密套件算法简介 • 国密 TLS 简介 来源:国密算法加密芯片,支持国密全套件等安全算法,http://www.bjlcs- tech.com/article/95 – 2023, Shanghai, China • SM2 为椭圆曲线(ECC)公钥加密算法,非对称加密,提 供加解密、数字签名、证书生成、密钥交换功能。由于以上 用例,也常用于区块链或网络安全密码协议,如SSL/TLS、 VPN。 • 保证数据机密性、真实性和完整性。 • SM2 算法和 RSA 算法都是公钥加密算法,SM2 算法是一 种更先进安全的算法,其性能与安全性优于RSA,在我们国 家商用密码体系中被用来替换0 码力 | 44 页 | 3.70 MB | 1 年前3
Rust 程序设计语言简体中文版Rust 能让你在更为广泛的编程领域走得更远,写出自信。(这一点并不显而易见) 举例来说,那些“系统层面”的工作涉及内存管理、数据表示和并发等底层细节。从传统角度来 看,这是一个神秘的编程领域,只为浸润多年的极少数人所触及,也只有他们能避开那些臭名 昭著的陷阱。即使谨慎的实践者,亦唯恐代码出现漏洞、崩溃或损坏。 Rust 破除了这些障碍:它消除了旧的陷阱,并提供了伴你一路同行的友好、精良的工具。想 要 t abstractions)—— 将高级语言特性编 译成底层代码,并且与手写的代码运行速度同样快。Rust 努力确保代码又安全又快速。 这里提到的只是几个较大的受益群体,Rust 语言也希望能支持更多其他用户。总的来说, Rust 最重要的目标是消除数十年来程序员习以为常的取舍,让安全和高效、速度和易读易用 可以兼得。试试看 Rust,说不定它的选择就适合你。 本书适合哪些人 本书假设你已经 ” 程序,以及如何使用 Rust 的包管理 器和构建工具 Cargo。第 2 章是一个编写 Rust 语言的实战介绍,我们会构建一个猜数字游 戏。我们会站在较高的层次介绍一些概念,而后续章节将提供更多细节。如果你希望立刻就动 手实践一下,第 2 章是开始的好地方。第 3 章介绍 Rust 中类似其他编程语言的特性,第 4 章 会学习 Rust 的所有权系统。如果你是一个特别细致的学习者,喜欢在进入下一环节之前学习0 码力 | 600 页 | 12.99 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0st abstractions)—— 将高级语言特性编 译成底层代码,并且与手写的代码运行速度同样快。Rust 努力确保代码又安全又快速。 这里提到的只是几个较大的受益群体,Rust 语言也希望能支持更多其他用户。总的来说, Rust 最重要的目标是消除数十年来程序员习以为常的取舍,让安全和高效、速度和易读易用 可以兼得。试试看 Rust,说不定它的选择就适合你。 本书适合哪些人 本书假设你 简体中文版 第十六章将引导我们了解不同的并发编程模型,并探讨 Rust 如何帮助你无畏地进行多线程编 程。第十七章将在此基础上进一步探索 Rust 的 async 和 await 语法,以及它们所支持的轻量 级并发模型。 第十八章着眼于 Rust 风格与你可能比较熟悉的 OOP(面向对象编程)原则之间的比较。第十 九章是一个模式和模式匹配的参考,它们是在 Rust 程序中表达思想的有效方式。第二十章是 文本编辑器和集成开发环境(Integrated Development Environments, IDE) 本书不会假设你使用何种工具来编写 Rust 代码。几乎任何文本编辑器都可以搞定!然而,很 多文本编辑器和集成开发环境(IDE)内置了 Rust 支持。你总是可以在 Rust 官网的工具页面 找到很多相对流行的编辑器和 IDE 列表。 离线使用本书 在一些示例中,我们将会使用标准库之外的 Rust 包。要运行这些示例,你需要保持网络连接,0 码力 | 562 页 | 3.23 MB | 26 天前3
使用Rust与ClickHouse构建高效可靠的日志系统组件过多,排查问题比较困难 • 商业使用不友好的开源协议 • 为什么选择Mencius+ClickHouse • 存储计算与业务分离 • 计算/统计能力更强 • 资源占用更小,性能更好 • 更友好的开源协议 系统介绍 • 多种接入方式 • Agent • Client • 查询 • LogQL • OpenTSDB • 其他功能 • 多租户 • 自定义索引 • 多维度统计 • 鉴权 日志服务(Mencius) • 存储(ClickHouse) 整体架构 • 协议层 • 处理层 • 计算层 • 存储层 系统实现 协议层 • 支持协议 • Loki • 写入 • Json/ProtoBuf • 查询 • LogQL • Log Queries • Metric Queries • OpenTSDB • 统计/计算 协议层 • Parser • 手写 • 为什么? • 日志全文索引 问题 • Rust • Lifetime侵入性比较强 • 库质量参差不齐 • ClickHouse • 可运维性弱 • 强Schema带来不够灵活的缺点 • 全文索引支持比较弱 Thank you!0 码力 | 19 页 | 2.66 MB | 1 年前3
Rust 在算法交易中的实际应用与积极效应集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测 交易指令 交易指令 1. 低延迟高吞吐的一写多读消息队列 2. 基于共享内存,全用户态,零拷贝(配合 capnproto) 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测 交易指令 交易指令 与非 Rust 世界交互的主要边界 Rust FFI 网络协议栈参数优化,多路行情冗余互备 UDP 组播 Rust 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测0 码力 | 18 页 | 3.49 MB | 1 年前3
硬件创业公司的Rust应用和转型 - 陈昱衡嵌入式Rust应用 更多开发者支持 利用系统级编程特性完善外设 更多的芯片厂商支持 SDK做Rust支持 SDK迁移到Rust 更多行业支持 更好的ROTS 更稳定的SDK 我司目前阶段,过渡期 嵌入式Rust应用 脑立体定位仪 1um精度 超小体积 自定义类SPI同步采集协议 采集+计算+自适应滤波 全自动脑立体定位仪(在研) Slint尝试 未来望 胶囊测温仪 Slint踩坑 开荒 Flickable 底部图层按键/滚轮 触发 图片切换时直接改图片地址导致卡顿 数据无法正常渲染 图表无支持,列表表格等支持弱 。。。 轻量化,高效率 多平台多语言支持 团队未来愿景 类QML的语法 Cargo 社区 胶囊测温仪 Slint踩坑 开荒 分页表格 悬浮球 隐藏页面 Tab滑动页面 可变图表 后续Rust人才跟进0 码力 | 23 页 | 4.95 MB | 1 年前3
Comprehensive Rust(简体中文) 202412依赖关系也可以通过其他 registry、git 及文件夹等解析。 • Rust 区分版本(edition):当前版本是 Rust 2021。之前的版本是 Rust 2015 和 Rust 2018。 – 这些版本支持对语言进行向后不兼容的更改。 – 为防止破坏代码,版本是可选的:通过 Cargo.toml 文件为 crate 选择合适的版本。 – 为免分割生态系统,Rust 编译器可以混合使用为不同版本编写的代码。 Rust 是一门新的编程语言,它的 1.0 版本于 2015 年发布: • Rust 是一门静态编译语言,其功能定位与 C++ 相似 – rustc 使用 LLVM 作为它的后端。 • Rust 支持多种平台和架构: – x86、ARM、WebAssembly...... – Linux、Mac、Windows...... • Rust 被广泛用于各种设备中: – 固件和引导程序, – 智能显示器, 枚举和模式匹配。 – 泛型。 – 无额外开销的外部函数接口(FFI)。 – 零成本抽象。 – 强大的编译器错误提示。 – 内置依赖管理器。 – 对测试的内置支持。 – 优秀的语言服务协议(Language Server Protocol)支持。 不用在这里占用过多时间。所有这些要点均会在后面进行详细讲解。 应该问问学生们都使用过哪些语言。根据答案侧重讲解 Rust 的不同特性: • 使用过 C0 码力 | 359 页 | 1.33 MB | 10 月前3
刘用涛 CnosDB时序数据库的Rust实践1. CnosDB 架构与选型 特性 • 横/纵 向扩展 • 计算存储分离 • 平衡存储性能与成本 • 查询引擎支持矢量化查询 • 兼容多种时序协议 • 可观测性 • 支持云原生 • 原生支持多租户 • 租户Quota可动态配置 • 云边端协同 • 云上生态融合 整体架构 1.2 存储引擎 version_set Vnode IndexEngine bucket bucket replica set 2. 为何从 Go 切换到 Rust • 高性能:无 GC 实时控制 • 安全:内存安全 线程安全 • 表达能力强:支持范型,match 表达式 3. Rust 使用经验分享 3.1 内存布局 offset Integer Float Complex 0 Discriminator(0)0 码力 | 26 页 | 3.28 MB | 1 年前3
共 43 条
- 1
- 2
- 3
- 4
- 5













