Rust HTTP 协议栈在终端通信场景的实践 - 胡凯
简单快速:客户向服务器请求服务时,只需传送 请求方法、路径和请求头。HTTP 协议简单、HTTP 服务器的程序规模小,因而通信速度很快。 ✓ 灵活:HTTP 支持传输任意类型的数据对象。 ✓ 无连接:HTTP 限制每次连接只处理一个请求,节 省传输时间。(在 HTTP/1.1 之后变更) ✓ 无状态:HTTP 协议对于事务处理没有记忆能力, 每个请求/应答之间相互独立。 Rust China Conf Status HTTP/1.1 • 连接可以复用 • 管线化技术 • 支持响应分块 • 引入额外的缓存 控制机制 • 引入内容协商机 制 • 报文基本格式不 再变化 HTTP/2 • 二进制协议 • 支持多路复用 • 支持响应分块 • 支持标头压缩 • 支持服务端推送 • 报文基本格式不 再变化 HTTP/3 • 基于 UDP 连接 • 报文基本格式不 再变化 Rust Conf 2022 – 2023, Shanghai, China Rust 与 HTTP 协议 Rust 对于 HTTP 协议有良好支持: HTTP 协议是以 TCP\TLS\UDP 等各种连接为基础的,非常依赖于高性能的 IO 操作。 利用 Rust 异步实现 HTTP 协议和各种应用程序能得到十分可观的性能提升,并且能降低用户编码的难度。 Rust China Conf 2022 –0 码力 | 26 页 | 1.25 MB | 1 年前3Rust 程序设计语言简体中文版
Rust。过程中可能会提 示你输入密码。如果安装成功,将会出现如下内容: Rust is installed now. Great! 另外,你还需要一个 链接器(linker),这是 Rust 用来将其编译的输出连接到一个文件中的 程序。很可能你已经有一个了。如果你遇到了链接器错误,请尝试安装一个 C 编译器,它通常 包括一个链接器。C 编译器也很有用,因为一些常见的 Rust 包依赖于 C 代码,因此需要安装 eat_at_restaurant() { hosting::add_to_waitlist(); } 示例 7-11: 使用 use 将模块引入作用域 在作用域中增加 use 和路径类似于在文件系统中创建软连接(符号连接,symbolic link)。通 过在 crate 根增加 use crate::front_of_house::hosting ,现在 hosting 在作用域中就是有 效的名称了,如同 hosting 对于智能指针模式来说第二个重要的 trait 是 Drop ,其允许我们在值要离开作用域时执行一些 代码。可以为任何类型提供 Drop trait 的实现,同时所指定的代码被用于释放类似于文件或网 络连接的资源。 我们在智能指针上下文中讨论 Drop 是因为其功能几乎总是用于实现智能指针。例如,当 Box被丢弃时会释放 box 指向的堆空间。 在其他一些语言中的某些类型,我们不得不 0 码力 | 600 页 | 12.99 MB | 1 年前3Rust 程序设计语言 简体中文版 1.85.0
Rust 支持。你总是可以在 Rust 官网的工具页面 找到很多相对流行的编辑器和 IDE 列表。 离线使用本书 在一些示例中,我们将会使用标准库之外的 Rust 包。要运行这些示例,你需要保持网络连接, 或者事先下载好这些依赖。要提前下载依赖,可以运行以下命令。(我们稍后会详细解释 cargo 是什么,以及这些命令分别的作用。) $ cargo new get-dependencies $ cd eat_at_restaurant() { hosting::add_to_waitlist(); } 示例 7-11: 使用 use 将模块引入作用域 在作用域中增加 use 和路径类似于在文件系统中创建软连接(符号连接,symbolic link)。通 过在 crate 根增加 use crate::front_of_house::hosting,现在 hosting 在作用域中就是有效 的名称了,如同 hosting 对于智能指针模式来说第二个重要的 trait 是 Drop,其允许我们在值要离开作用域时自定义要 执行的操作。你可以为任何类型提供 Drop trait 的实现,同时所指定的代码被用于释放类似于 文件或网络连接的资源。 我们在智能指针上下文中讨论 Drop,是因为在实现智能指针时几乎总会用到 Drop trait。例 如,当 Box被丢弃时会释放 box 指向的堆空间。 在其他一些语言中的某些 0 码力 | 562 页 | 3.23 MB | 9 天前3⽤ egg 孵化你的 SQL 优化器 - 王润基
Filter Join A Join B C Join C Join A B Join Hash Join Sort-merge Join Nested Loop Join 连接重排序 连接算法选择 TopN A Order TopN A Limit 查询优化 定义计划节点 定义重写规则 ⽤纯 Rust 编写的第⼀代优化器 Visitor 模式 ⽤纯 Rust Reordering Equal Join Equal Join ① + pushdown ① ② ② ③ ③ cost=N^3 cost=N^2+N^2 定义规则:连接重排序 / 等值连接 Row Analysis 估计⾏数 • Expr:Selectivity 0-1 • Plan:Rows CostFunction 估计代价 • Expr:每⾏计算开销0 码力 | 39 页 | 6.48 MB | 1 年前3Comprehensive Rust(简体中文) 202412
duplicate(foo); println!("{pair:?}"); } • 请尝试创建一个 NonClonable 对象,并将其传递给 duplicate 函数。 • 当需要多个 trait 时,请使用 + 将它们连接起来。 • 显示 where 子句,学员在阅读代码时会看到它。 fn duplicate(a: T) -> (T, T) where T: Clone, { 76 (a.clone() 219 第 X 章 Chromium 220 第 39 部分 Welcome to Rust in Chromium Chromium 中的第三方库支持 Rust,并使用第一方粘合代码连接 Rust 和现有 Chromium C++ 代码。 今天,我们将调用 Rust 对字符串进行一些有趣的操作。如果您的代码中某个部分是用于向用 户展示 UTF8 字符串,那么可以在代码库中的对应部分按照这个步骤来操作,而不一定要在 开发的一些实用 crate。 在本课程的微控制器部分,我们将使用 BBC micro:bit v2 作为示例。这是一款基于 Nordic nRF51822 微控制器的开发板,配有一些 LED 和按钮、连接 I2C 的加速度计和罗盘,以及板载 SWD 调试程序。 首先,请安装我们稍后需要用到的一些工具。在 gLinux 或 Debian 上: sudo apt install gcc-aarch64-linux-gnu 0 码力 | 359 页 | 1.33 MB | 10 月前3Rust 在算法交易中的实际应用与积极效应
行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 行情服务 总控模块 预测模型 策略模块 数据总线 智 能 特 征 工 程 去量纲:标准化、归一化 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎0 码力 | 18 页 | 3.49 MB | 1 年前3Hello 算法 1.1.0 Rust版
1‑5 拼装积木 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。 约定俗成的简称 在实际 构是计算机中组织和存储数据的 方式。 ‧ 数据结构与算法紧密相连。数据结构是算法的基石,而算法是数据结构发挥作用的舞台。 ‧ 我们可以将数据结构与算法类比为拼装积木,积木代表数据,积木的形状和连接方式等代表数据结构, 拼装积木的步骤则对应算法。 17 第 2 章 复杂度分析 Abstract 复杂度分析犹如浩瀚的算法宇宙中的时空向导。 它带领我们在时间与空间这两个维度上深入探索,寻找更优雅的解决方案。 UTF‑16 编码的字符串的长度也是 ?(1) 的操作。但是,计算 UTF‑8 编码的字符串的长度需要遍历整个字符串。 ‧ 字符串操作:在 UTF‑16 编码的字符串上,很多字符串操作(如分割、连接、插入、删除等)更容易进行。 在 UTF‑8 编码的字符串上,进行这些操作通常需要额外的计算,以确保不会产生无效的 UTF‑8 编码。 实际上,编程语言的字符编码方案设计是一个很有趣的话题,涉及许多因素。0 码力 | 388 页 | 18.50 MB | 1 年前3Hello 算法 1.2.0 简体中文 Rust 版
1‑5 拼装积木 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。 约定俗成的简称 在实际 据结构是计算机中组织和存储数据的 方式。 ‧ 数据结构与算法紧密相连。数据结构是算法的基石,而算法为数据结构注入生命力。 ‧ 我们可以将数据结构与算法类比为拼装积木,积木代表数据,积木的形状和连接方式等代表数据结构, 拼装积木的步骤则对应算法。 1. Q & A Q:作为一名程序员,我在日常工作中从未用算法解决过问题,常用算法都被编程语言封装好了,直接用就 可以了;这是否意味着我们工作中的问题还没有到达需要算法的程度? UTF‑16 编码的字符串的长度也是 ?(1) 的操作。但是,计算 UTF‑8 编码的字符串的长度需要遍历整个字符串。 ‧ 字符串操作:在 UTF‑16 编码的字符串上,很多字符串操作(如分割、连接、插入、删除等)更容易进行。 在 UTF‑8 编码的字符串上,进行这些操作通常需要额外的计算,以确保不会产生无效的 UTF‑8 编码。 实际上,编程语言的字符编码方案设计是一个很有趣的话题,涉及许多因素。0 码力 | 387 页 | 18.51 MB | 10 月前3Hello 算法 1.0.0 Rust版
1‑5 拼装积木 两者的详细对应关系如表 1‑1 所示。 表 1‑1 将数据结构与算法类比为拼装积木 数据结构与算法 拼装积木 输入数据 未拼装的积木 数据结构 积木组织形式,包括形状、大小、连接方式等 算法 把积木拼成目标形态的一系列操作步骤 输出数据 积木模型 值得说明的是,数据结构与算法是独立于编程语言的。正因如此,本书得以提供基于多种编程语言的实现。 � 约定俗成的简称 构是计算机中组织和存储数据的 方式。 ‧ 数据结构与算法紧密相连。数据结构是算法的基石,而算法是数据结构发挥作用的舞台。 ‧ 我们可以将数据结构与算法类比为拼装积木,积木代表数据,积木的形状和连接方式等代表数据结构, 拼装积木的步骤则对应算法。 17 第 2 章 复杂度分析 � 复杂度分析犹如浩瀚的算法宇宙中的时空向导。 它带领我们在时间与空间这两个维度上深入探索,寻找更优雅的解决方案。 UTF‑16 编码的字符串的长度也是 ?(1) 的操作。但是,计算 UTF‑8 编码的字符串的长度需要遍历整个字符串。 ‧ 字符串操作:在 UTF‑16 编码的字符串上,很多字符串操作(如分割、连接、插入、删除等)更容易进行。 在 UTF‑8 编码的字符串上,进行这些操作通常需要额外的计算,以确保不会产生无效的 UTF‑8 编码。 实际上,编程语言的字符编码方案设计是一个很有趣的话题,涉及许多因素。0 码力 | 383 页 | 17.61 MB | 1 年前3新一代分布式高性能图数据库的构建 - 沈游人
资管计划 / 资金往来 / 担 保 / 借贷 / 集团 / 控股 / 上下 游 ... 父子 / 组合 / 继承 转账 / 大额转账 / 频繁转 账 /... 拥有 拥有 持有 登录 / 连接 已购买 / 意向购 买 / 潜在购买 /... 个人 客户 账户 机构 客户 资产 合约 员工 手机号 设备 商品 商品 查询 / 操作 生活中无处不在的图 图分析技术分类 图查询及其应用场景 图查询 • 使用图数据库的查询语言进行点边的关联查询,可以快速完成传统数据库难以完成的 多度点边关 联 当前图的典型应用场景 路径识别 群体挖掘 节点识别 相似节点 链接预测 连接强度 一致行动人 同事关系 实际控制人 可能认识的人 上下游 同爱好的人 亲属关系 … 人与人、企业与企业、企业与人之间的 复杂、潜在关系推导和挖掘 为已有的分析模型增加“关系特征”维 容灾保障 ( BR ) 元数据层 事务管理 MVOCC 计算层 Cypher AST 优化器 图计算 内存加速引 擎 服务接口 HTTP/RPC Spark 连接器 Python UDF 执行器 索引管理 一致性存储 RAFT 分片管理 元数据 集群管理 用户权限 GNN 应用层 Atlas 图平台 Atlas Studio Atlas0 码力 | 38 页 | 24.68 MB | 1 年前3
共 16 条
- 1
- 2