王宜国 - 基于 Rust 编程语⾔构建 Amphitheatre CLI Desktop Server 的全平台实践经验Code 编 辑器进⾏编码 AMP 在 Amphitheatre 中创建 即可实时部署到云端 进⾏测试和验收 上线 利⽤ Amphitheatre 配置⽂ 件, 执⾏标准 CI/CD ⼯ 作流,轻松发布! 开发⼯程师需要在本机安装各种编程语⾔的运⾏时和相关的框 架以及库,随着业务规模的增⻓,多语⾔多版本的维护和管理 变得越来越复杂。 技术栈杂多 研发流程⻓达⼗⼏个步骤:安装开发软件、配置环境、克隆代 研发流程⻓达⼗⼏个步骤:安装开发软件、配置环境、克隆代 码、开发、本地调试、提交代码、编译构建、⾃动化测试、部 署到测试环境、测试验收、合并代码到主线、部署到⽣产环 境… 研发流程繁⻓ 起因:开发者之痛 为了部署测试,不仅要学习容器化、Kubernetes,还要申请资 源安装配置各项中间件,学习成本⾼,费⼼费⼒ 复杂的基础设施 Build Test Code Deploy Release Test Integrate 轻松创建⽆限量的隔离集成测试环境 ⽀持微服务架构体系和多⼈协作联调测试 Kayn Sona Riven Event Account Project Activity Tariq Share Redis ETCD 可让您完全跳过镜像构建, 使⽤新代码更新正在运⾏的容器, 只需⼏秒钟⽽不是⼏分钟。 本地开发实时部署到远程集群 如何⼯作的? Kubernetes 集群0 码力 | 34 页 | 10.81 MB | 1 年前3
基于 Rust 语言编写的可编程的全球分布式 MQTT 服务器 王文庭设备 程序 mqtt HPMQLite 上层MQTT Broker 设备 程序 HPMQ 上层MQTT Broker 通过边缘函数的⽅式快速兼容多⼚商 1)⾃定义协议+⾃定义函数 2)对接标准协议+公共函数 场景:多⼚商协议快速兼容 geo-distributed + 函数式开发 = 边缘计算 整体架构 • Webassembly,简称wasm • ⽤⼀句话 异构设备兼容性强(x86, ARM, RISC-V, MIPS, Raspberry Pi, Orange Pi … ) Serverless in MQTT Broker • 更好的代码执⾏环境抽象,它可以直接部署代码或应⽤程序到各种异构设备,⽽不需要开 发⼈员为每个异构设备都编写或编译⼀套单独的代码或程序,从⽽提⾼开发效率; • 更好的安全机制,Docker 之类的容器最让⼈诟病的问题之⼀就是安全性; 是偏⼤,并且依赖的东⻄偏多,很难在⼀些资源 受限的设备上跑起来; Wasm vs Docker • Kubedge? • OpenYurt? • Krustlet? wasm如何分发部署? 3. HPMQ函数开发说明 HPMQ平台 触发器 公共函数 (⽐如:tb2aws) 私有函数 配置 关联 关联 使⽤流程 编写函数 Hpmqfile OCI镜像 镜像仓库0 码力 | 31 页 | 3.95 MB | 1 年前3
Rust 在算法交易中的实际应用与积极效应集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测 交易指令 交易指令 1. 低延迟高吞吐的一写多读消息队列 2. 基于共享内存,全用户态,零拷贝(配合 capnproto) 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测 缺失值处理:样条插值 降维:PCA A I 信 号 生 成 LSTM 神经网络 BP 全连接网络 XGBoost 集成学习模型 定制早停函数 原 始 高 频 数 据 实时超高频数据 结构化多档行情 全行业指数 概念指数 龙头 lead 股票 互联网新闻 外 部 交 互 交易所引擎 Web客户端 下单指令 信息回报 母单/信息上传 统计信息查询等 数据获取 模型训练 信号预测0 码力 | 18 页 | 3.49 MB | 1 年前3
Comprehensive Rust(繁体中文). 192 34.1.4 AIDL 伺服器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 34.1.5 部署 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 34.1.6 AIDL 用戶端 . . . 269 53.5.1 Bitflags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 53.5.2 多個暫存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 53.5.3 驅動程式 . . . . . . 62 練習 317 62.1 哲學家就餐問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317 62.2 多執行緒連結檢查器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318 62.3 並行:上午練習 . . . . .0 码力 | 358 页 | 1.41 MB | 10 月前3
Comprehensive Rust(繁体中文) 202406. 190 34.1.4 AIDL 伺服器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 34.1.5 部署 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 34.1.6 AIDL 用戶端 . . . 267 53.5.1 Bitflags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 53.5.2 多個暫存器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268 53.5.3 驅動程式 . . . . . . 62 練習 315 62.1 哲學家就餐問題 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 62.2 多執行緒連結檢查器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316 62.3 並行:上午練習 . . . . .0 码力 | 356 页 | 1.41 MB | 1 年前3
夏歌-使用Rust构建LLM应用WasmEdge 已经支持 Pytorch 、 TensorFlow Lite • WASI-NN 2.0 比如 Langchain Rewrite it in Rust • 笨重 • 资源占用多 • 大部分时间是在等待 • 轻量级 • 资源占用量小 • 节省大量计算资源 Python 与 Docker Rust 与 WebAssembly 为什么要用 Rust ? Rewrite Rust 在系统编程已经取得了巨大成功 培养更广泛的 Rust 开发 围绕 LLM 生态封装相应的 Rust 框 架,让开发者能够使用简单的 Rust 写 应用 如何用 Rust 实现的 构建和部署 AI 相关工作流的 serverless 平台 • 上传 Rust function ,平台负责将 Rust 编译成 Wasm ,并运行在 WasmEdge 安全容 器中 • 平台封装了一些常用 GitHub 、 Discord 、向量数据库比如 qdront 。 • 整个 serverless 平台是为 Rust 和 WebAssembly 设计的 视频演示如何使用 serverless 的方式部署 一个 PR review 机器人。 待插入视频,大概是 2 分钟的录屏 Talk is cheap, show me the code! • Telegram ChatGPT 机器 人 •0 码力 | 36 页 | 38.31 MB | 1 年前3
简谈 Rust 与国密 TLS - 王江桐为标识加密算法(Identity-Based Cryptography),非对称加密,标识加密将用户的标识 (如微信号、邮件地址、手机号码、QQ 号等)作为公钥,省略了交换数字证书和公钥过程,使得 安全系统变得易于部署和管理。提供签名校验,密钥交换,密钥封装与加解密功能。由于以上用 例,可以用于网络安全密码协议,如SSL/TLS。 • 保证数据机密性、真实性和完整性。 • 在商用密码体系中,SM9 主要用于用户的身份认证,据新华网公开报道,SM9 的公钥密码体制有许多优点,省去了证书管理等。因此,使用SM9算法不需要申请数字证 书,适用于互联网各种新兴应用的安全保障,应用可采用手机号码或邮件地址作为公钥, 实现数据加密、身份认证、通话加密、通道加密等安全应用,并具有使用方便,易于部署 的特点。 • 不同于传统签名算法的由用户随机选择私钥然后 计算得到公钥的方式,SM9 能够实现用户指定公 钥(即身份标识),密钥生成中心通过公钥计算 私钥。 SM9 Introduction of Rust性能基本和C、C++持平,适用于系统级编程领域 ü 强大编译器 ü 全开源方式运作 ü Cargo ü Crates.io ü Docs.rs ü 自带测试框架 ü 支持跨平台 ü 多编程范式 ü 丰富的文档手册 高性能 高生产力 国密实现生态 Overview of Shangmi Cryptography Implementation Rust China Conf 20220 码力 | 44 页 | 3.70 MB | 1 年前3
Hello 算法 1.2.0 繁体中文 Rust 版作者:靳宇棟(@krahets) 程式碼審閱:伍志豪(@night‑cruise)、榮怡(@rongyi) Release 1.2.0 2024‑12‑06 序 兩年前,我在力扣上分享了“劍指 Offer”系列題解,受到了許多讀者的鼓勵與支持。在與讀者交流期間,我 最常被問到的一個問題是“如何入門演算法”。漸漸地,我對這個問題產生了濃厚的興趣。 兩眼一抹黑地刷題似乎是最受歡迎的方法,簡單、直接且有效。然而刷題就如同玩“踩地雷”遊戲,自學能 ”從這個意義上看,這本 書並非完全“免費”。為了不辜負你為本書所付出的寶貴“注意力”,我會竭盡所能,投入最大的“注意力” 來完成本書的創作。 本人自知學疏才淺,書中內容雖然已經過一段時間的打磨,但一定仍有許多錯誤,懇請各位老師與同學批評 指正。 本書中的程式碼附有可一鍵執行的原始檔,託管於 github.com/krahets/hello‑algo 倉庫。 動畫在 PDF 內的展示效果有限,可訪問 www 從巧奪天工的匠人 技藝、到解放生產力的工業產品、再到宇宙運行的科學規律,幾乎每一件平凡或令人驚嘆的事物背後,都隱 藏著精妙的演算法思想。 同樣,資料結構無處不在:大到社會網絡,小到地鐵路線,許多系統都可以建模為“圖”;大到一個國家,小 到一個家庭,社會的主要組織形式呈現出“樹”的特徵;冬天的衣服就像“堆疊”,最先穿上的最後才能脫下; 羽毛球筒則如同“佇列”,一端放入、一端取出;字典就像一個“雜湊表”,能夠快速查找目標詞條。0 码力 | 388 页 | 18.82 MB | 10 月前3
Hello 算法 1.0.0 Rust版轮的重复后,就能将其牢记在心。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一”,旨在帮助你更高效地展开阶段二和阶段三的学习。 第 0 章 前言 hello‑algo.com 9 图 log_recur(n: f32) -> i32 { if n <= 1.0 { return 0; } log_recur(n / 2.0) + 1 } 对数阶常出现于基于分治策略的算法中,体现了“一分为多”和“化繁为简”的算法思想。它增长缓慢,是 仅次于常数阶的理想的时间复杂度。 � ?(log ?) 的底数是多少? 准确来说,“一分为 ?”对应的时间复杂度是 ?(log? ?) 。而通过对数换底公式,我们可以 ,元素之间是一对一的顺序关系。 ‧ 非线性数据结构:树、堆、图、哈希表。 非线性数据结构可以进一步划分为树形结构和网状结构。 ‧ 树形结构:树、堆、哈希表,元素之间是一对多的关系。 ‧ 网状结构:图,元素之间是多对多的关系。 图 3‑1 线性数据结构与非线性数据结构 3.1.2 物理结构:连续与分散 当算法程序运行时,正在处理的数据主要存储在内存中。图 3‑2 展示了一个计算机内存条,其中每个黑色方0 码力 | 383 页 | 17.61 MB | 1 年前3
Hello 算法 1.1.0 Rust版GitHub 仓库。 3. 阶段三:搭建知识体系。在学习方面,我们可以阅读算法专栏文章、解题框架和算法教材,以不断丰富 知识体系。在刷题方面,可以尝试采用进阶刷题策略,如按专题分类、一题多解、一解多题等,相关的 刷题心得可以在各个社区找到。 如图 0‑8 所示,本书内容主要涵盖“阶段一”,旨在帮助你更高效地展开阶段二和阶段三的学习。 第 0 章 前言 hello‑algo.com 9 图 log_recur(n: i32) -> i32 { if n <= 1 { return 0; } log_recur(n / 2) + 1 } 对数阶常出现于基于分治策略的算法中,体现了“一分为多”和“化繁为简”的算法思想。它增长缓慢,是 仅次于常数阶的理想的时间复杂度。 ?(log ?) 的底数是多少? 准确来说,“一分为 ?”对应的时间复杂度是 ?(log? ?) 。而通过对数换底公式,我们可以得到具有 ,元素之间是一对一的顺序关系。 ‧ 非线性数据结构:树、堆、图、哈希表。 非线性数据结构可以进一步划分为树形结构和网状结构。 ‧ 树形结构:树、堆、哈希表,元素之间是一对多的关系。 ‧ 网状结构:图,元素之间是多对多的关系。 图 3‑1 线性数据结构与非线性数据结构 3.1.2 物理结构:连续与分散 当算法程序运行时,正在处理的数据主要存储在内存中。图 3‑2 展示了一个计算机内存条,其中每个黑色方0 码力 | 388 页 | 18.50 MB | 1 年前3
共 36 条
- 1
- 2
- 3
- 4













