王宜国 - 基于 Rust 编程语⾔构建 Amphitheatre CLI Desktop Server 的全平台实践经验第三届中国Rust开发者⼤会 基于 Rust 编程语⾔构建 Amphitheatre CLI / Desktop / Server 的全平台实践经验 王宜国 - 独⽴开源软件作者 RUST CHINA CONF 2023 • 项⽬背景介绍 • 产品功能演示 • 应⽤场景概览 项⽬介绍 • 概念 • 架构设计 • 技术实现 设计与实现 ⼤纲 Amphitheatre 云开发环境(Cloud0 码力 | 34 页 | 10.81 MB | 1 年前3
使用Rust与ClickHouse构建高效可靠的日志系统做过嵌入式/CDN/数据库开发 • 从C/C++到Rust • 现在在腾讯云(专有云)从事日志系统的开发 自我介绍 PhoTto / image / chart 系统介绍 系统介绍 • 属于腾讯专有云PaaS平台(TCS) • 承接TCS底座日志 • 从Loki=>Menicus • 提供日志的搜索/报警/处理等功能 系统介绍 • 为什么放弃 Loki • 资源占用过大 • 统计/计算能力比较弱0 码力 | 19 页 | 2.66 MB | 1 年前3
在Solana合约链实现IBC协议跨链互操作 - 苏胤榕IBC协议的核心已经被协议核心团队用Rust语言实现。 - 对于本身就是使用Rust语言作为智能合约开发的区块链 平台来说,支持集成支持IBC协议会很方便。 - 这里优先构想了在Solana链上实现IBC协议,因为 Solana平台本身极 低的gas消耗,很适合我现在构思 的这套实现方案。(后面会做解释) 引入Solana作为示例平台 - Solana极低的Gas花销。 - Anchor合约开发框架,大大降低了Rust合 Anchor合约开发框架,大大降低了Rust合 约开发者在Solana上开发智能合约的难度。 - 以及本人对Solana平台的喜欢,优先考虑 了Solana平台,但是这套方案是可以推广到 任何的Rust智能合约平台的。 大致讲解下IBC协议的原理, 以及参与整个IBC协议活动的不同决策 IBC协议概述> 详细介绍IBC协议的基本概念和原理 Connection创建原理 Connection创建OpenInit Connection创建OpenTry 3.Solana平台的支持:Solana是一个基于Rust开发 的 高性能区块链平台,提供了完善的开发工具和文档,可 以帮助开发者更加便捷地进行Rust合约链开发。 4. Informal Systems提供的IBC协议Rust语言实现和 协议的形式化验证可以有效提高IBC协议的安全性和可 靠性,保障跨链交易的安全和正确性。 简要介绍Solana作为使用Rust开发智能合约的平台 在Solana链上实现IBC协议的核心要点0 码力 | 29 页 | 3.05 MB | 1 年前3
新一代分布式高性能图数据库的构建 - 沈游人伴随市场对于知识图谱应用的不断深入,图数据规模和应用性能之间的矛盾愈 加凸显,海致针对以上背景展开了系统性的技术攻关,解决了图数据的高效存 储、索引及复制难题,提出了基于图缩减的高效分析方法,并孵化出了一个大 规模图数据分析平台 AtlasGraph 。 5 获得 2022 年中国电子学会科学技术奖科技进步一等奖 中国电子学会发布的《 2022 中国电子学会科学技术奖公告》,海 致星图与北京邮电大学、蚂蚁科技集团有限公司、中移动信息技术 的建模能力不足、结构知识难用、巨量数据难算等技术挑战,实现了大规模复杂异质图数 据的表示学习模型、语义推荐和风险管理关键技术,构建了完整的兼具理论指导与应用检 验的大规模图数据智能分析系统与平台,满足了大数据时代从复杂异质图数据中进行知识 发现的重要需求。最终获得国内外授权发明专利 43 项, CCF -A 类论文 51 篇,获得 2 次国际竞赛冠军,参与了 2 项图计算相关标准制定。 Source : Graph Aware 图数据库发展趋势 AtlasGraph 研发背景 • 业务对大图分析的诉求(千亿点、万亿边) • 实时风控对图库的性能挑战( OLTP 毫秒级响应) • 海致图平台产品服务于金融、政府行业有大量业务经验积累(接近客户需求) • 现有开源产品无法满足要求(受限于基础架构设计,优化性能有限) 新一代分布式图数据库需具备的特性 特性 信 雅 达 • 高可用0 码力 | 38 页 | 24.68 MB | 1 年前3
Rust在物理引擎研发中的应用 崔汉青功能特点 云原生架构 单机架构 动作物理分离 跨平台确定性 动作物理统一 算力动态调配 分布式计算 物理材质统一解算 算法优化 物理材质单独解算 工程优化 性能待优化 AI仿真加速 前沿动作功能 缺乏动作功能 AI动作生成 优秀的易用性和适配性 缺乏AI能力 保证每个目标平台的极致性能 跨端确定性 – 保证所有目标平台计算结 果完全一致 具备分布式能力 – 通过横向扩展突破单 在不损耗性能的情况下,其优秀的语 法设计保证了语言的强大表达力:用更少 的代码写更多的功能 # 高表达力 # 安全 Rust 依靠 LLVM 实现了多目标平台,并可 以用语言内建的 target_feature 针对不同 的指令集进行处理 # 跨平台 Cargo 真的比 cmake 好太多了 # 依赖管理 # 无惧并发 Rust 在语法层面极大程度保证了内存安全 和并发安全 语言内建的 async/await,还有优秀的 AoSoA类型,跨端确定性难以保证 nalgebra 过于复杂,大量的泛型导致使用 不便,代码质量一般 其余开源 crates 完成度不高 Rust 开源数学库的痛点 写好数学库并不容易 • 充分利用目标平台指令集 – 大量的针对目标平台的SIMD优化 • 数学计算本质上是类似的 – 大量的相似代码 • Portable SIMD unstable • 影响跨端确定性的因素太多了 motphys-math 为高性能物理引擎量0 码力 | 22 页 | 1.18 MB | 1 年前3
Rust 语言学习笔记的特性。 在 rust 中大量使用属性,对于 go 程序员而言,属性的大量使用很容易造成困 惑。 属性有些类似与 spring boot 中的注解,但又有很大不同。首先 java 就是一门 平台无关性的语言。 属性只能用于修饰 rust 中的 item。 rust 中的 item 包括: 1. extern crate 声明 2. use 声明 3. 模块(模块是一个 Item 指明这个函数很可能是不会被执行的,因此优化的时候特别对待它。 5.1.2.3 应用于 FFI的属性 extern 块可以应用以下属性 link_args - 指定链接时给链接器的参数,平台和实现相关。 link - 说明这个块需要链接一个 native 库,它有以下参数: o name - 库的名字,比如 libname.a 的名字是 name; o kind - static - 静态库 framework - OS X 里的 Framework 5.1.2.4 条件编译 有时候,我们想针对不同的编译目标来生成不同的代码,比如在编写跨平台模块时, 针对 Linux 和 Windows 分别使用不同的代码逻辑。 条件编译基本上就是使用 cfg 这个属性,直接看例子 #[cfg(target_os = "macos")] fn0 码力 | 117 页 | 2.24 MB | 1 年前3
夏歌-使用Rust构建LLM应用serverless 平台 • 上传 Rust function ,平台负责将 Rust 编译成 Wasm ,并运行在 WasmEdge 安全容 器中 • 平台封装了一些常用 LLM 和 SaaS 的 API ,并发布成了 crate ,比如 ChatGPT 、 telegram 、 GitHub 、 Discord 、向量数据库比如 qdront 。 • 整个 serverless 平台是为 Rust0 码力 | 36 页 | 38.31 MB | 1 年前3
基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺),专为物联网、工业互联网、金融、 IT 运维监控等场景设计并优化,具有极强的弹性伸缩能力。同时它还带有内建的缓存、流式计算、数据订阅等 系统功能,能大幅减少系统设计的复杂度,降低研发和运营成本,是一个极简的时序数据处理平台。 采用关系型数据库模型 需要建库、建表, 为提升写入和查询效率,要求一个数据采集点一张表 为实现多表聚合,引入超级表概念 子表通过超级表创建,带有标签,通过标签实现多表 数据订阅 • 集群、高可用 高可靠、线性扩展 + 专业技术服务 • 边云数据复制 • 跨云 / 异地数据复制 • 增量备份 • 多级存储 • 工业数据接入 全托管时序数据 管理云服务平台 • 全托管服务 • VPC 对等连接 • 多云部署( AWS/Azure/ GCP) CONTENTS 自 我 介 绍 T D e n g i n e t a o s X R u 数据总线 / 消息队列消息接入,定制化程度要求高 • 数据业务逻辑自定义需求强 • 一定的实时数据分析能力 taosX - 功能路线图 集群运维 数据接入 流式处理 流式处理 数据分享 开放平台 • Backup/Restore • Replication • Migration • Data Sources • IoT Protocols • Streaming Pipeline0 码力 | 29 页 | 2.26 MB | 1 年前3
Comprehensive Rust(简体中文) 202412为你展示常见的 Rust 习惯用法。 我们将前四天的课程称为“Rust 基础”。 在此基础上,你可以选择深入研究一个或多个专门的主题: • Android:为期半天的课程,介绍如何在 Android 平台开发中使用 Rust(AOSP)。课程内容包括 与 C、C++ 和 Java 的互操作性。 • Chromium:为期半天的课程,介绍如何在基于 Chromium 的浏览器中使用 Rust。课程内容包括 除了为期四天的“Rust 基础”课程外,还有一些专业课题提供: Android 中的 Rust 深入探究 Android 中的 Rust 课程为期半天,旨在介绍如何使用 Rust 进行 Android 平台开发。其中包 括与 C、C++ 和 Java 的互操作性。 你需要检出 AOSP。在同一机器上检出课程库,然后将 src/android/ 目录移至所检出的 AOSP 的根 目录。这将确保 Android 是一门新的编程语言,它的 1.0 版本于 2015 年发布: • Rust 是一门静态编译语言,其功能定位与 C++ 相似 – rustc 使用 LLVM 作为它的后端。 • Rust 支持多种平台和架构: – x86、ARM、WebAssembly...... – Linux、Mac、Windows...... • Rust 被广泛用于各种设备中: – 固件和引导程序, – 智能显示器,0 码力 | 359 页 | 1.33 MB | 10 月前3
陈东 - 利用Rust重塑移动应用开发-230618- Rendering Engine 利用 Rust 重塑移动应用开发 跨平台开发的优势和局限性 Pros: - Fast - Single Codebase - Third-party support (Javascript better than Dart) 利用 Rust 重塑移动应用开发 跨平台开发的优势和局 限性 Cons: - Performance - Native Native feature utilize - Existing Codebase 跨平台开发到到底 应该跨什么? UI or Logic ? 利用 Rust 重塑移动应用开发 Rust 在移动端应 用的价值 Rust is the only advanced choice for cross platform development. 利用 Rust 重塑移动应用开发 Rust0 码力 | 22 页 | 2.10 MB | 1 年前3
共 32 条
- 1
- 2
- 3
- 4













