Comprehensive Rust(简体中文) 202412
之后,你应当配置你的编辑器或 IDE 以开始使用 Rust。大多数编辑器使用了 rust-analyzer。 它为 VS Code、Emacs、Vim/Neovim 及其他许多编辑器提供了自动补全及定义跳转的功能。同样也可 以使用 RustRover IDE。 • 在 Debian/Ubuntu 上,你也可以通过 apt 安装 Cargo、Rust 源代码和 Rust 格式化工具。但是, 这样会得到一个过时的 据需要让你在这些版本之间切换。 关键点: • Rust 有一个快速发布时间表,每六周就会发布一次新版本。新版本保持与旧版本的向后兼容性,并 添加新功能。 17 • 共有三个发布阶段:“稳定版(stable)”、 “测试版(beta)”和“夜间版(nightly)”。 • 新功能会先在“夜间版”上测试, “测试版”会每六周转为“稳定版”。 • 依赖关系也可以通过其他 registry、git 及文件夹等解析。 直接使用编译器的情况相当少见(大多数用户从不这样做)。 – 值得一提的是,Cargo 本身就是一个功能强大且全面的工具。它能够实现许多高级功能,包括 但不限于: * 项目/软件包结构 * 工作区 * 开发依赖和运行时依赖管理/缓存 * 构建脚本 * 全局安装 * 它还可以使用子命令插件(例如 cargo clippy)进行扩展。 – 详情请参阅 官方 Cargo Book 2.2 本培训中的代码示例 在本培训中,我们将主要通过示例探索0 码力 | 359 页 | 1.33 MB | 10 月前3Rust 程序设计语言 简体中文版 1.85.0
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 12.4. 采用测试驱动开发完善库的功能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 14.5. Cargo 自定义扩展命令 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367 16.4. 使用 Sync 与 Send Traits 的可扩展并发 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373 17. Async0 码力 | 562 页 | 3.23 MB | 9 天前3Rust 程序设计语言简体中文版
............................................................................ 278 12.4. 采用测试驱动开发完善库的功能 ................................................................................ 293 12.5. 处理环境变量 将错误信息输出到标准错误而不是标准输出 ............................................................. 316 13. Rust 中的函数式语言功能:迭代器与闭包 ...................................................................... 318 13.1. 闭包:可以捕获其环境的匿名函数 安装二进制文件 ........................................................................... 368 14.5. Cargo 自定义扩展命令 .............................................................................................. 3690 码力 | 600 页 | 12.99 MB | 1 年前3简谈 Rust 与国密 TLS - 王江桐
com/article/95.html 国密套件总览 List of Shangmi Cryptography Rust China Conf 2022 – 2023, Shanghai, China 算法 算法标准 功能 类型 安全位数 (bit) 对应算法 是否公开 应用 Sm1 / 分组加解密 对称加 密 128 AES128 否,仅以 IP 核的形 式存在于芯片中 智能 IC 卡、智能密码钥匙、加 SM2 Rust China Conf 2022 – 2023, Shanghai, China • SM2 为椭圆曲线(ECC)公钥加密算法,非对称加密,提 供加解密、数字签名、证书生成、密钥交换功能。由于以上 用例,也常用于区块链或网络安全密码协议,如SSL/TLS、 VPN。 • 保证数据机密性、真实性和完整性。 • SM2 算法和 RSA 算法都是公钥加密算法,SM2 算法是一 种更先 MD5/SHA-1/SHA-2 等国际 算法,是在 SHA-256 基础上改进实现的一种算法,消息分组长度为 512 位,摘要值长度为 256 位,其中使用了异或、模、模加、移位、与、或、非运算,由填充、迭代过程、消息扩展和压缩 函数所构成。 • 保证信息的完整性。 • 在商用密码体系中,SM3 主要用于数字签名及验证、消息认证码生成及验证、随机数生成、密钥 扩充等。据国家密码管理局表示,其安全性及效率要高于 MD50 码力 | 44 页 | 3.70 MB | 1 年前3Rust在物理引擎研发中的应用 崔汉青
AI生成 数据驱动 AI加速 云原生架构和 AI 能力 架构特点 性能特点 功能特点 云原生架构 单机架构 动作物理分离 跨平台确定性 动作物理统一 算力动态调配 分布式计算 物理材质统一解算 算法优化 物理材质单独解算 工程优化 性能待优化 AI仿真加速 前沿动作功能 缺乏动作功能 AI动作生成 优秀的易用性和适配性 缺乏AI能力 保证每个目标平台的极致性能 果完全一致 具备分布式能力 – 通过横向扩展突破单 机物理算力的上限 Motphys 物理引擎的设计目标 Rust 的性能和 C/C++ 比肩,支持 SIMD 优 化,满足苛求性能的引擎研发需求; Rust 的零开销抽象甩掉了复杂设计的性能包袱 # 高性能 Rust 在不损耗性能的情况下,其优秀的语 法设计保证了语言的强大表达力:用更少 的代码写更多的功能 # 高表达力 # 安全 Rust 8 Sphere – Sphere – coincide 7 ns 16 ns 2.3 Motphys 分布式物理引擎设计目标 0.02s内多次通信 苛刻的低延迟要求 高速内网环境下的线 性扩展 – 新增结点的 网络开销恒定 高可用和负载均衡 Message的RTT 可测量 Motphys 分布式物理 引擎网络架构 derive serde vs protobuf • 通信协议选型0 码力 | 22 页 | 1.18 MB | 1 年前3Hello 算法 1.1.0 Rust版
的表示方式包含指数位,导致其取值范围远大于 int 。根据以上计算, float 可表示的最大正数为 2254−127 × (2 − 2−23) ≈ 3.4 × 1038 ,切换符号位便可得到最小负数。 尽管浮点数 float 扩展了取值范围,但其副作用是牺牲了精度。整数类型 int 将全部 32 比特用于表示数字, 数字是均匀分布的;而由于指数位的存在,浮点数 float 的数值越大,相邻两个数字之间的差值就会趋向越 大。 换行符和制表符)。 图 3‑6 ASCII 码 然而,ASCII 码仅能够表示英文。随着计算机的全球化,诞生了一种能够表示更多语言的 EASCII 字符集。它 在 ASCII 的 7 位基础上扩展到 8 位,能够表示 256 个不同的字符。 在世界范围内,陆续出现了一批适用于不同地区的 EASCII 字符集。这些字符集的前 128 个字符统一为 ASCII 码,后 128 个字符定义不同,以适应不同语言的需求。 1980 年发布了 GB2312 字符集,其收录了 6763 个汉字,基本满足了汉字的 计算机处理需要。 然而,GB2312 无法处理部分罕见字和繁体字。GBK 字符集是在 GB2312 的基础上扩展得到的,它共收录了 21886 个汉字。在 GBK 的编码方案中,ASCII 字符使用一个字节表示,汉字使用两个字节表示。 第 3 章 数据结构 hello‑algo.com 61 3.4.30 码力 | 388 页 | 18.50 MB | 1 年前3Hello 算法 1.2.0 简体中文 Rust 版
的表示方式包含指数位,导致其取值范围远大于 int 。根据以上计算, float 可表示的最大正数为 2254−127 × (2 − 2−23) ≈ 3.4 × 1038 ,切换符号位便可得到最小负数。 尽管浮点数 float 扩展了取值范围,但其副作用是牺牲了精度。整数类型 int 将全部 32 比特用于表示数字, 数字是均匀分布的;而由于指数位的存在,浮点数 float 的数值越大,相邻两个数字之间的差值就会趋向越 大。 换行符和制表符)。 图 3‑6 ASCII 码 然而,ASCII 码仅能够表示英文。随着计算机的全球化,诞生了一种能够表示更多语言的 EASCII 字符集。它 在 ASCII 的 7 位基础上扩展到 8 位,能够表示 256 个不同的字符。 在世界范围内,陆续出现了一批适用于不同地区的 EASCII 字符集。这些字符集的前 128 个字符统一为 ASCII 码,后 128 个字符定义不同,以适应不同语言的需求。 1980 年发布了 GB2312 字符集,其收录了 6763 个汉字,基本满足了汉字的 计算机处理需要。 然而,GB2312 无法处理部分罕见字和繁体字。GBK 字符集是在 GB2312 的基础上扩展得到的,它共收录了 21886 个汉字。在 GBK 的编码方案中,ASCII 字符使用一个字节表示,汉字使用两个字节表示。 第 3 章 数据结构 www.hello‑algo.com 61 30 码力 | 387 页 | 18.51 MB | 10 月前3Hello 算法 1.0.0 Rust版
的表示方式包含指数位,导致其取值范围远大于 int 。根据以上计算, float 可表示的最大正数为 2254−127 × (2 − 2−23) ≈ 3.4 × 1038 ,切换符号位便可得到最小负数。 尽管浮点数 float 扩展了取值范围,但其副作用是牺牲了精度。整数类型 int 将全部 32 比特用于表示数字, 数字是均匀分布的;而由于指数位的存在,浮点数 float 的数值越大,相邻两个数字之间的差值就会趋向越 大。 (如换行符和制表符)。 图 3‑6 ASCII 码 然而,ASCII 码仅能够表示英文。随着计算机的全球化,诞生了一种能够表示更多语言的「EASCII」字符 集。它在 ASCII 的 7 位基础上扩展到 8 位,能够表示 256 个不同的字符。 在世界范围内,陆续出现了一批适用于不同地区的 EASCII 字符集。这些字符集的前 128 个字符统一为 ASCII 码,后 128 个字符定义不同,以适应不同语言的需求。 1980 年发布了「GB2312」字符集,其收录了 6763 个汉字,基本满足了汉 字的计算机处理需要。 然而,GB2312 无法处理部分罕见字和繁体字。「GBK」字符集是在 GB2312 的基础上扩展得到的,它共收录 了 21886 个汉字。在 GBK 的编码方案中,ASCII 字符使用一个字节表示,汉字使用两个字节表示。 第 3 章 数据结构 hello‑algo.com 61 3.4.30 码力 | 383 页 | 17.61 MB | 1 年前3新一代分布式高性能图数据库的构建 - 沈游人
低资源消耗 • 易用 • 功能丰富 AtlasGraph 关键特性 云原生 Cloud-Native Graph Database 支持弹性伸缩,有 效利用硬件资源,高可用,高 可靠,故障自愈,低成本运维 HTAP Hybrid Transactional/Analytical Processing ,高性能图计算引 擎,预置 20 余种图计算算法 ,可扩展的分析引擎支持更复 杂的数据挖掘和机器学习场景 图平台 Atlas Studio Atlas Client 基础 设施 Docker/K8S/VM X86/ARM - 基于 RUST 语言保证性能优势 - 分布式架构性能可线性扩展 - 针对大规模图优化的存算引擎 - 配合 Atlas 图平台,实现无代码图分析 - Query 性能分析模块,启发式提示优化 - 内置多种分析函数,面向分析师友好 -MVOCC 保证事务一致性 体展现 可视化图探索分析 AtlasGraph 架构及实现 图技术简介 Takeway AtlasGraph 图数据库关键特性 - 基于 RUST 语言保证性能优势 - 分布式架构性能可线性扩展 - 针对大规模图的优化的存算引擎 - 配合 Atlas 图平台,实现无代码图分析 - Query 性能分析模块,启发式提示优化 - 内置多种分析函数,面向分析师友好 -MVOCC 保证事务一致性0 码力 | 38 页 | 24.68 MB | 1 年前3基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺
是一款开源、云原生的时序数据库( Time Series Database ),专为物联网、工业互联网、金融、 IT 运维监控等场景设计并优化,具有极强的弹性伸缩能力。同时它还带有内建的缓存、流式计算、数据订阅等 系统功能,能大幅减少系统设计的复杂度,降低研发和运营成本,是一个极简的时序数据处理平台。 采用关系型数据库模型 需要建库、建表, 为提升写入和查询效率,要求一个数据采集点一张表 `groupid` INT, `location` VARCHAR(24)) TDengine - 业务模式 开源版 企业版 云服务版 核心功能开源 • SQL 支持 • 无模式写入 • 缓存 • 流计算 • 数据订阅 • 集群、高可用 高可靠、线性扩展 + 专业技术服务 • 边云数据复制 • 跨云 / 异地数据复制 • 增量备份 • 多级存储 • 工业数据接入 全托管时序数据 模块之间关联性不高但模块组成复杂,可维护性差 • 大量设备大量数据归集存储,存储压力大 • 数据总线 / 消息队列消息接入,定制化程度要求高 • 数据业务逻辑自定义需求强 • 一定的实时数据分析能力 taosX - 功能路线图 集群运维 数据接入 流式处理 流式处理 数据分享 开放平台 • Backup/Restore • Replication • Migration • Data Sources0 码力 | 29 页 | 2.26 MB | 1 年前3
共 30 条
- 1
- 2
- 3