应用 waPC (rust) 做软件测试工具第三届中国 Rust 开发者大会 应用 waPC (rust) 做软件测试工具 Alan poon 潘泳权 大家好! @rustropy_gaming ruito_89 PhoTto / image / chart Webassembly Procedures Call waPC 协议标准化了本机代码调用 WebAssembly 和 WebAssembly 调用本机代码的通信 (messaging) Microservices • Multiple backend product line with complex upstream • Common testing platform 大公司抓包工具的需求 软件测试工具 • 模拟数据规则 • 自动化测试 • Supports http/https/tcp/websocket(MITM) • Can use rust to construct own wasm API • Support websocket stand in for wasm API 抓包 - Wasm Mock Server wasm 工具 does not invent the wheel 软件测试工具 • 模拟数据规则 • 自动化测试 ModifyRequest(req *http.Request) error{ … req_,err:=wasm.Invoke(ctx0 码力 | 30 页 | 2.50 MB | 1 年前3
Rust分布式账务系统 - 胡宇第三届中国 Rust 开发者大会 Rust 构建分布式账务系统 在 Fintech 公司落地 Rust 项目的经验分享 Airwalle x 胡宇 Airwallex 我们是一家跨境支付领域的 Fintech 独角兽 关于我们 E2 轮 Fintech 独角兽,业务遍布全球 关于我们: Airwallex 墨尔本 新加坡 伦敦 深圳 香港 北京 旧金山 上海 东京 提供高效,低成本的数字银行服务 关于我们: Airwallex 从设计架构到实现细节 项目介绍 分布式账务系统 Fintech 互联网 正确性 bug= 资损 bug 不可怕,快速迭代 可靠性 丢数据 = 资损 允许数据丢失 性能 超低延迟 + 高吞吐 超高吞吐 交易日志 审计,监管 调试使用 分布式账务系统 Fintech 领域中的软件与互联网软件的不同 需求分析 支付处理: ● 转账 ● 水平扩展性:利用分布式事务实现钱包集群的的水平扩 展,应对高达 100 万 TPS 的流量 可演化性:业务逻辑与底层 API 解耦,当业务发生改变 时,底层 API 不用改变 分布式账务系统 设计理念 - Rust 是我们可靠的基石 分布式账务系统 存算分离 API 解耦 读写分离 层级账号 Rust ● 事务层与账户层分 离 ● 独立水平扩展 ● CQRS ● Event Sourcing ● 针对读场景,写场0 码力 | 27 页 | 12.60 MB | 1 年前3
基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺Flight 的物联网和时序数据传输及 转换工具 霍琳贺 涛思数据 Rust China Conf 2023 CONTENTS 自 我 介 绍 T D e n g i n e t a o s X R u s t 使 用 TDengine Rust • OOXML - Excel 解析库 • xlsx2csv - Excel 转 CSV 工具 • Unqlite - 单文件非关系型数据库 Multi-address DSN(Data Source Name) parser. TDengine 应用开发组 • Python/Rust/Go 连接器 • 数据可视化 • 数据库运维工具 • 第三方数据源接入 • BI 系统接入 https://taosdata.com/ https://github.com/zitsen CONTENTS 自 我 介 绍 T D e n g i n e t 是一款开源、云原生的时序数据库( Time Series Database ),专为物联网、工业互联网、金融、 IT 运维监控等场景设计并优化,具有极强的弹性伸缩能力。同时它还带有内建的缓存、流式计算、数据订阅等 系统功能,能大幅减少系统设计的复杂度,降低研发和运营成本,是一个极简的时序数据处理平台。 采用关系型数据库模型 需要建库、建表, 为提升写入和查询效率,要求一个数据采集点一张表 为实现多表聚合,引入超级表概念0 码力 | 29 页 | 2.26 MB | 1 年前3
Zadig 面向开发者的云原生 DevOps 平台开发 技术支持 事件 需求设计 架构设计 拆任务、写代码 代码集成 xN 单元测试验证 xN 代码扫描 xN 自测、联调 xN 集成验证 xN 写测试用例 系统验证 xN 自动化测试 xN 性能测试 xN 安全测试 xN 数据变更 xN 代码变更 xN 配置变更 xN 部署测试环境 xN 部署预发环境 xN 传统 DevOps 体系 Zadig 云原生 DevOps 平台 高人效 低人效 低人效 / 低质量 / 低效率 / 高成 本: 人淹没在系统的海洋里,无数平台手工切换 高人效 / 高质量 / 高效率 / 低成 本: 人在系统之外 / 上,复杂性下沉到单一平台 希望 工程师不再花时间在开发写代码之外的脏活累活,比如服务部署、找环境,服务编排等 Infra 的事情。 1 0 2021 年 7 月 2021 年 9 月 2021 年 11 月 2021 年 12 月 1 个月功能改造 90% 功能实现开源 技术社区雏形搭建 2022 年 3 月 生态伙伴工具 + Zadig Zadig 企业交付案例场景深化 开 发 者 场 景 挖 掘 3-5 个领域敏感型场景 建立产品发展委员会 贡献者流程优化 2022 年 9 月 场 景 深 化0 码力 | 59 页 | 81.43 MB | 1 年前3
谈谈MYSQL那点事MySQL 架构设计—高可用架构 系统优化:硬件、架构 系统优化:硬件、架构 服务优化 服务优化 应用优化 应用优化 MySQL MySQL 优化方式 优化方式 影响性能的因素 影响性能的因素 应用程序 应用程序 查询 查询 事务管理 事务管理 数据库设计 数据库设计 数据分布 数据分布 网络 网络 操作系统 操作系统 硬件 硬件 使用好的硬件,更快的硬盘、大内存、多核 读写分离;数据库分表、数据库切片(分 读写分离;数据库分表、数据库切片(分 布式),也考虑使用相应缓存服务帮助 布式),也考虑使用相应缓存服务帮助 MySQL MySQL 缓解访问 缓解访问 压力 压力 系统优化 系统优化 配置合理的 配置合理的 MySQL MySQL 服务器,尽量在应用本身达到一 服务器,尽量在应用本身达到一 个 个 MySQL MySQL 最合理的使用 最合理的使用 针对 innodb_buffer_pool_size 32M 10G InnoDB 使用一个缓冲池来保存索引和原始数据 , 这里你设置越大 , 你在存取表里面数据时所需要的 磁盘 I/O 越少,一般是内存的一半,不超过 2G , 否则系统会崩溃,这个参数非常重要 innodb_additional_mem _pool_size 2M 512M InnoDB 用来保存 metadata 信息 , 如果内存是 16G ,最好本值超 1024M0 码力 | 38 页 | 2.04 MB | 1 年前3
Zadig 产品使用手册效能 01 04 02 03 工程化协同:“人、技术、流 程、工具” 四维协同基线,沉 淀全流程数据,从感知到赋 能,服务于工程师 释放云基建能力:链接任何云 及自建资源(容器、主机、车 机、端等),释放云原生价值 和企业创新力 生态开放:广泛开放系统 模块和 OpenAPI ,链接 一切流程、服务、工具和 上下游伙伴 安全简单自主可控:私有化 部署,现有服务 0 迁移成本 迁移成本 、体验丝滑接入容易、学习 使用门槛极低 现存做法大多以「单点工具 + 写脚本」或运管类平台为主, Zadig 则是面向开发者视角,中立,云原生一体化价值链平台。 与现存 DevOps 方案对比: 现存方案 典型代表 方案特点分析 Zadig 优势 传统 Jenkins 方案 GitLab + Jenkins + 脚本化 运行效率低,管理维护成本高 方案局限性大,安全性风险高 多服务并行部署发布,云原生构建环境和运行 环境,基础设施对接及企业级 SSO/ 权限管理 等 运维管理类平台 蓝鲸 Rainbond KubeSphere KubeVela 面向资源管理的运维工具集 面向开发者,需结合 CI/CD 工具额外 搭建全流程能力 专门面向开发者的生产力平台,涵盖需求到开 发,测试,运维的云原生一体化技术底座支撑 云厂商 DevOps 平台 华为云 DevCloud 阿里云效0 码力 | 52 页 | 22.95 MB | 1 年前3
新一代分布式高性能图数据库的构建 - 沈游人专注于数据智能技术赋能中国数字经济发展 海致高性能图计算院士专家工作站 郑纬民 - 海致科技首席科学家 中国工程院院士、清华大学计算机科学与技术系教 授、中国计算机学会前理事长,中国计算机系统结构 的学科带头人,我国高性能计算和存储系统等方面的 泰斗和先行者。 2021 年 3 月 25 日,海致科技与清华大学计算机科学与技术系共同建设高性能图计算院士专家工作站 。 高性能图计算是高性能计算、图计算两项 Computer Federation )“ 2021 年 CCF 科 学技术奖科技进步卓越奖”。 伴随市场对于知识图谱应用的不断深入,图数据规模和应用性能之间的矛盾愈 加凸显,海致针对以上背景展开了系统性的技术攻关,解决了图数据的高效存 储、索引及复制难题,提出了基于图缩减的高效分析方法,并孵化出了一个大 规模图数据分析平台 AtlasGraph 。 5 获得 2022 年中国电子学会科学技术奖科技进步一等奖 其中异质图建模与表示学习技术和超大规模图学习系统处于国际领 先水平。” 以终为始,以行为知,这一项目从图计算所面临的挑战出发,解决了大规模图数据所产生 的建模能力不足、结构知识难用、巨量数据难算等技术挑战,实现了大规模复杂异质图数 据的表示学习模型、语义推荐和风险管理关键技术,构建了完整的兼具理论指导与应用检 验的大规模图数据智能分析系统与平台,满足了大数据时代从复杂异质图数据中进行知识0 码力 | 38 页 | 24.68 MB | 1 年前3
Rust与算法 - 谢波结算及大数据系统研发工程师 疫情下的明智选择 / 个人项目实践 学习中总结探索 2015 年发布,很多人近几年才知道 Rust , Rust 中国 大会也才第三届,期待 Rust 中国大会第十届 Rust 处于起步阶段 中文圈学习资料或书籍少,有部分是翻译国外产品,能 不能中国人向国外输出作品 Rust 缺少学习资源 Rust 未来大有可为 Rust 在操作系统,数据库,各种框架和工具上应用范围 总结及学习资源 • 算法总结 • 学习资源 总结及学习资源 Rust 算法总结 • 复杂度分析及算法优化 • 别自己实现,用标准库 • 利用 Rust 特性实现高效算法 • 技术在进步,用新工具辅助学习 Rust 学习资源 # 社区/公众号 社区: Rust 语言中文社区、乐酷 Rust 技术论坛 公号:觉学社、 Rust 编程指北 # 书籍 《编程之道》、《 Rust 权威指南》、《0 码力 | 28 页 | 3.52 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 11 现代 CMake 进阶指南需要先创建 build 目录 • 切换到 build 目录 • 在 build 目录运行 cmake < 源码目录 > 生成 Makefile • 执行本地的构建系统 make 真正开始构建( 4 进程并 行) • 让本地的构建系统执行安装步骤 • 回到源码目录 现代 CMake 提供了更方便的 -B 和 --build 指令,不同平台,统一命 令! • cmake -B build • --build 命令。 // 在源码目录用 -B 直接创建 build 目录并生成 build/Makefile // 自动调用本地的构建系统在 build 里构建,即: make -C build -j4 // 调用本地的构建系统执行 install 这个目标,即安 装 -D 选项:指定配置变量(又称缓存变量) • 可见 CMake 项目的构建分为两步: 项目的构建分为两步: • 第一步是 cmake -B build ,称为配置阶段( configure ),这时只检测环境并生成构建规则 • 会在 build 目录下生成本地构建系统能识别的项目文件( Makefile 或是 .sln ) • 第二步是 cmake --build build ,称为构建阶段( build ),这时才实际调用编译器来编译代码 • 在配置阶段可以通过 -D 设置缓存变量。第二次配置时,之前的0 码力 | 166 页 | 6.54 MB | 1 年前3
Await-Tree Async Rust 可观测性的灵丹妙药 - 赵梓淇• 动态的调用关系 • 痛点:观测与调试工具无法理解灵活的执行逻辑 • Backtrace 不够直观 ( 调用栈 -> 调用树 ) • Tracing 无法追踪调用关系的变化 Async Rust 观测与调试的痛点 Async Rust 回顾 • 特性:用户态调度的无栈协程 • Pending Task 不存在栈空间 • 痛点:观测与调试工具无法还原 Pending Task 的执行状态 Async Rust 可观测性的灵丹妙药 总结 • Async 生态下的 Stack Tree Backtrace 工具 • 实时观测各个 Task 的执行状态 • 直观分析 Task/Future 间的依赖阻塞关系 • 将 Await-Tree 集成在自己的 Async Rust 系统中! • github.com/risingwavelabs/await-tree Thank you !0 码力 | 37 页 | 8.60 MB | 1 年前3
共 29 条
- 1
- 2
- 3













