Rust分布式账务系统 - 胡宇Fintech 公司落地 Rust 项目的经验分享 Airwalle x 胡宇 Airwallex 我们是一家跨境支付领域的 Fintech 独角兽 关于我们 E2 轮 Fintech 独角兽,业务遍布全球 关于我们: Airwallex 墨尔本 新加坡 伦敦 深圳 香港 北京 旧金山 上海 东京 班加罗尔 阿姆斯特丹 西安 马来西亚 币种 50+ 国家 130+ 高可用:在部分节点失效的情况下,依旧可以提供正确的 服务 超低延迟:实时交易,超低响应延迟 水平扩展性:利用分布式事务实现钱包集群的的水平扩 展,应对高达 100 万 TPS 的流量 可演化性:业务逻辑与底层 API 解耦,当业务发生改变 时,底层 API 不用改变 分布式账务系统 设计理念 - Rust 是我们可靠的基石 分布式账务系统 存算分离 API 解耦 读写分离 层级账号 Rust ● 事务层与账户层分 正确性:内存安全,线程安全 ● 可靠性: Raft 共识算法 raft-rs ● 高性能:关键路径无锁单线程 顶层架构 ● Gateway 路由层 ○ 业务 API 到底层 API 的翻 译 ○ 产生转账计划 ● Marker 事务层 ○ 使用业务 id 进行路由 ○ 执行转账计划 ○ 分发账户变动请求 ● Auticuro 账户层 ○ 使用账户 id 进行分区 ○ 执行账户变动请求0 码力 | 27 页 | 12.60 MB | 1 年前3
王宜国 - 基于 Rust 编程语⾔构建 Amphitheatre CLI Desktop Server 的全平台实践经验VS Code 编 辑器进⾏编码 AMP 在 Amphitheatre 中创建 即可实时部署到云端 进⾏测试和验收 上线 利⽤ Amphitheatre 配置⽂ 件, 执⾏标准 CI/CD ⼯ 作流,轻松发布! 开发⼯程师需要在本机安装各种编程语⾔的运⾏时和相关的框 架以及库,随着业务规模的增⻓,多语⾔多版本的维护和管理 变得越来越复杂。 技术栈杂多 研发流程⻓达⼗⼏个步骤:安装开发软件、配置环境、克隆代 研发流程⻓达⼗⼏个步骤:安装开发软件、配置环境、克隆代 码、开发、本地调试、提交代码、编译构建、⾃动化测试、部 署到测试环境、测试验收、合并代码到主线、部署到⽣产环 境… 研发流程繁⻓ 起因:开发者之痛 为了部署测试,不仅要学习容器化、Kubernetes,还要申请资 源安装配置各项中间件,学习成本⾼,费⼼费⼒ 复杂的基础设施 Build Test Code Deploy Release Test Integrate Account Project Activity Tariq Share Redis ETCD 可让您完全跳过镜像构建, 使⽤新代码更新正在运⾏的容器, 只需⼏秒钟⽽不是⼏分钟。 本地开发实时部署到远程集群 如何⼯作的? Kubernetes 集群 更改 资源定义 ⻆⾊定义 执⾏资源 资源定义 资源定义 更改 ⽂件 更改 ⽤户 触发 ⽂件 更改 frontend0 码力 | 34 页 | 10.81 MB | 1 年前3
Rust 在算法交易中的实际应用与积极效应立于2018年,是国内领先的智能算法和交易系统服 务公司,专注于智能算法交易领域的研究和开发。 公司正基于Rust生态,结合机器学习、深度学习等新 兴技术,打造高效率、低延迟、高可靠、全内存高频 交易平台,满足自身在量化行业交易业务的同时也为 券商、量化私募等众多大型金融机构提供优质的算法 交易解决方案。 公司介绍 证监会信息技术系统备案 国家高新技术企业 科技型中小企业 双软企业资质认证 智能投研技术联盟核心成员 100+ 涵盖异常的事前、事中、事后的全方位监控 基于 Rust 异步编程框架开发,风控逻辑可插拔,兼顾部署灵活性与执行性能 风控服务端和桌面客户端 Rust 全栈应用实践 - 桌面客户端、风控 高性能异步日志库 ftlog Rust 全栈应用实践 - 开源 1. 特性丰富实用: 时间切分 受限写入 异步写入 按业务多目标写入 .... 2. 性能优秀 Rust 应用场景展望0 码力 | 18 页 | 3.49 MB | 1 年前3
基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺TDengine - 业务模式 开源版 企业版 云服务版 核心功能开源 • SQL 支持 • 无模式写入 • 缓存 • 流计算 • 数据订阅 • 集群、高可用 高可靠、线性扩展 + 专业技术服务 • 边云数据复制 • 跨云 / 异地数据复制 • 增量备份 • 多级存储 • 工业数据接入 全托管时序数据 管理云服务平台 • 全托管服务 • VPC 对等连接 • 多云部署( AWS/Azure/ 多种不同协议数据对接,开发复杂度高 • 模块之间关联性不高但模块组成复杂,可维护性差 • 大量设备大量数据归集存储,存储压力大 • 数据总线 / 消息队列消息接入,定制化程度要求高 • 数据业务逻辑自定义需求强 • 一定的实时数据分析能力 taosX - 功能路线图 集群运维 数据接入 流式处理 流式处理 数据分享 开放平台 • Backup/Restore • Replication0 码力 | 29 页 | 2.26 MB | 1 年前3
新一代分布式高性能图数据库的构建 - 沈游人图分析工具集 • 图咨询服务 Source : Graph Aware 图数据库发展趋势 AtlasGraph 研发背景 • 业务对大图分析的诉求(千亿点、万亿边) • 实时风控对图库的性能挑战( OLTP 毫秒级响应) • 海致图平台产品服务于金融、政府行业有大量业务经验积累(接近客户需求) • 现有开源产品无法满足要求(受限于基础架构设计,优化性能有限) 新一代分布式图数据库需具备的特性 的图查询 语言,内置上百种分析函数, 面向分析师友好,拥抱标准, 基于 openCypher 向 ISO GQL 迈进 实时大图 支持万亿节点存储及流式计算 引擎的结合,最新数据实时入 库构图,为在线业务决策分析 提供有力支撑 AtlasGraph 架构及实现 新一代图技术应用特征简介 Takeaway AtlasGraph 架构概览 存储层 副本管理 CRAQ 图原生存储 CPU/GPU 等异构设备训练 • 特殊设计的高性能图算子库 丰富的算法库 • 内置多种 20+ 个 GNN 算法 • 支持同构图 / 异构图 / 属性图 客户的信任 • 上线某银行反欺诈场景 业务效果提升 10%+ 灵活易用的开发平台 • AtlasML Python Library • 集成 Jupyter Notebook 超参数自动优化 • 支持超参数自动调优,解放算 法科学家生产力,避免繁杂的0 码力 | 38 页 | 24.68 MB | 1 年前3
2021信创“大比武”鲲鹏基础软件开发赛道
基于Rust语言的openGauss驱动• 测试服务器 13 团队简介 纪凤楠 十一年研发工作经验。工作中主要是使用 JAVA 语言。 目前就职于中软国际,任职架构师。虽然是从事技术工作,但个人认为技术要为业务服务,因此也非常重视对业务的理 解,力图为业务量身打造最合适的技术实现。 Thank you.0 码力 | 14 页 | 566.24 KB | 1 年前3
Rust 程序设计语言简体中文版错误是软件中不可否认的事实,所以 Rust 有一些处理出错情况的特性。在许多情况下,Rust 要求你承认错误的可能性,并在你的代码编译前采取一些行动。这一要求使你的程序更加健 壮,因为它可以确保你在将代码部署到生产环境之前就能发现错误并进行适当的处理。 Rust 将错误分为两大类:可恢复的(recoverable)和 不可恢复的(unrecoverable)错误。对 于一个可恢复的错误,比如文件未找到 中很多并发错误都是 编译时 错误,而非运行时错 误。因此,相比花费大量时间尝试重现运行时并发 bug 出现的特定情况,Rust 会拒绝编译不 正确的代码并提供解释问题的错误信息。因此,你可以在开发时修复代码,而不是在部署到生 产环境后修复代码。我们给 Rust 的这一部分起了一个绰号 无畏并发(fearless concurrency)。 无畏并发令你的代码免于出现诡异的 bug 并可以轻松重构且无需担心会引入新的 trait 而不是对象和继承。每一个状态对象 负责其自身的行为,以及该状态何时应当转移至另一个状态。持有一个状态对象的值对于不同 状态的行为以及何时状态转移毫不知情。 使用状态模式的优点在于,程序的业务需求改变时,无需改变值持有状态或者使用值的代码。 我们只需更新某个状态对象中的代码来改变其规则,或者是增加更多的状态对象。 首先我们将以一种更加传统的面向对象的方式实现状态模式,接着使用一种更 Rust0 码力 | 600 页 | 12.99 MB | 1 年前3
陈东 - 利用Rust重塑移动应用开发-230618and easyuse hardware wallet for the Web3 world 利用 Rust 重塑移动应用开发 Photo / image / chart 采用 Rust 重构业务逻 辑的背景和动机 Performance The same business logic will run on different platforms such as embedded devices target - Call the function on the swift code 利用 Rust 重塑移动应用开发 Photo / image / chart Rust 在 Keystone 业务上的实践 Rust Crypto Core 利用 Rust 重塑移动应用开发 RCC_android RCC_ios https://github.com/KeystoneHQ/rust-crypto-core0 码力 | 22 页 | 2.10 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0错误是软件开发中不可避免的事实,所以 Rust 有一些处理出错情况的特性。在许多情况下, Rust 要求你承认错误的可能性,并在你的代码编译前采取一些行动。这一要求使你的程序更 加健壮,因为它可以确保你在将代码部署到生产环境之前就能发现错误并进行适当的处理。 Rust 将错误分为两大类:可恢复的(recoverable)和 不可恢复的(unrecoverable)错误。对 于一个可恢复的错误,比如文件未找到 中很多并发错误都是编译时错误,而非运行时错误。 因此,相比花费大量时间尝试重现运行时并发 bug 出现的特定情况,不正确的代码会直接编 译失败并提供解释问题的错误信息。因此,你可以在开发时修复代码,而不是在部署到生产环 境后修复代码。我们给 Rust 的这一部分起了一个绰号无畏并发(fearless concurrency)。无畏 并发令你的代码免于出现诡异的 bug 并可以轻松重构且无需担心会引入新的 bug。 trait 而不是对象和继承。每一个状态对象 负责其自身的行为,以及该状态何时应当转移至另一个状态。持有一个状态对象的值对于不同 状态的行为以及何时状态转移毫不知情。 使用状态模式的优点在于,程序的业务需求改变时,无需改变值持有状态或者使用值的代码。 我们只需更新某个状态对象中的代码来改变其规则,或者是增加更多的状态对象。 首先我们将以一种更加传统的面向对象的方式实现状态模式,接着使用一种在 Rust0 码力 | 562 页 | 3.23 MB | 29 天前3
使用Rust与ClickHouse构建高效可靠的日志系统为什么放弃 Loki • 资源占用过大 • 统计/计算能力比较弱 • 组件过多,排查问题比较困难 • 商业使用不友好的开源协议 • 为什么选择Mencius+ClickHouse • 存储计算与业务分离 • 计算/统计能力更强 • 资源占用更小,性能更好 • 更友好的开源协议 系统介绍 • 多种接入方式 • Agent • Client • 查询 • LogQL • OpenTSDB0 码力 | 19 页 | 2.66 MB | 1 年前3
共 29 条
- 1
- 2
- 3













