此次开源线上案例
- 上线满足开通条件就能看到收益,正反馈及时。
- 轻量,不像 App 或者 Web,还需要纠结选哪种技术栈。
-
卓越的性能与零成本抽象
- Rust 的运行效率与 C/C++ 相当,是系统级编程语言的性能标杆。
- “零成本抽象”意味着高级的语言特性(如迭代器、闭包)在编译后几乎不会产生额外的运行时开销。
-
内存安全性与所有权系统
- 这是 Rust 最核心、最革命性的优点。通过其独特的所有权、借用和生命周期概念,在编译阶段就能彻底消除悬垂指针、数据竞争等内存错误。
- 无需垃圾回收机制,就能保证内存安全,避免了运行时因 GC 导致的性能抖动。
-
无畏并发
- 所有权模型自然延伸到了并发领域。编译器会强制要求并发代码的数据访问是安全的,从而在编译期就杜绝了数据竞争。
- 使得编写高效且安全的并发程序(如通道通信、锁、原子操作)变得更加容易和可靠。
-
强大的类型系统与模式匹配
- 强大的静态类型系统在编译期能捕获大量错误,提高代码质量。
Result和Option枚举强制开发者处理所有可能成功和失败的情况,避免了空指针异常和未处理的运行时错误。- 完备的模式匹配功能,使得复杂数据结构的解构和处理变得非常安全和简洁。
-
高效的 C 语言交互与无运行时
- 拥有极小的运行时,并且无需垃圾回收,使得它与 C 语言的交互(FFI)非常高效且无缝。
- 可以轻松集成到现有的 C/C++ 项目中,也可以被 C/C++ 代码调用,是理想的系统集成和扩展语言。
-
丰富的工具链与现代开发体验
- Cargo: 内置的包管理器和构建工具,功能强大且易于使用,依赖管理、项目构建、测试运行、文档生成一键完成。
- Rustfmt: 自动格式化工具,保证代码风格统一。
- Clippy: 代码 lint 工具,能提供大量改进代码质量和性能的建议。
-
活跃的社区与清晰的未来发展
- 社区非常活跃、友好且乐于助人。
- 语言的发展通过 RFC 过程进行,透明且有序。每年发布的 Edition 机制在引入新特性的同时,保证了向后的兼容性。
-
广泛的应用场景
- 系统编程: 操作系统、文件系统、浏览器组件(如 Firefox 的 Servo 引擎)。
- 网络服务: 高性能 Web API、微服务、异步网络编程(得益于强大的
async/await生态)。 - 命令行工具: 得益于其高性能和强大的类型系统,可以构建出快速、可靠的 CLI 工具。
- WebAssembly: 是编译到 WebAssembly 的首选语言之一,用于在浏览器和边缘计算中实现高性能。
- 嵌入式开发: 凭借其高性能、低资源占用和内存安全,正在成为嵌入式领域的新兴力量。
简单讲就是快!省!
做流量主小程序最重要的是什么?上的小程序多!上的小程序多自然服务器资源消耗也多!一台2c2g的活动主机,用 nodejs 做服务端一台只能部署10来个?并发高了可能2、3个就得添加新服务器。 而 Rust 同样的主机应付这样的流量就很轻松。给出此次开源的流量主小程序 nestjs 和 rust 的对比。
| 语言 | 空间占用 | 内存占用 | cpu |
|---|---|---|---|
| nodejs | 344M | 231M | 3.1% |
| rust | 12M | 23M | 0.5% |
数据为腾讯云 2c2g Debian 12 下的真实数据
-
高标准兼容性与强大 SQL 支持
- 高度符合 SQL 标准,支持大多数 SQL:2016 核心功能及众多扩展。
- 支持复杂的 SQL 查询,包括通用表表达式(CTE)、窗口函数、OVER 子句等。
-
丰富的数据类型
- 除了标准的数值、字符串、日期时间等类型,还内置支持数组、JSON/JSONB、XML、HSTORE(键值对)等。
- 特别地,
JSONB类型提供了高效的 JSON 数据存储和查询能力,使其在 NoSQL 场景下也表现优异。
-
卓越的扩展性
- 允许用户使用多种编程语言(如 Python, JavaScript, C/C++ 等)编写自定义函数、存储过程和运算符。
- 拥有庞大的扩展生态系统,例如 PostGIS(地理信息系统)、pgRouting(路径规划)等,极大地扩展了数据库功能。
-
强大的数据完整性与并发控制
- 全面支持 ACID 事务属性,保证数据一致性。
- 采用多版本并发控制(MVCC)机制,能够在高并发环境下高效处理读写冲突,提高性能。
-
卓越的性能与优化能力
- 支持多种高效的索引类型,包括 B-tree、Hash、GiST、SP-GiST、GIN 和 BRIN,并可自定义索引。
- 查询优化器非常先进,能够处理复杂的连接和子查询,并支持并行查询以加速大数据量操作。
-
可靠性与稳定性
- 以其强大的稳定性和极低的崩溃率而闻名,适合承载关键业务和 7x24 小时运行的系统。
- 提供了完善的预写日志(WAL)、复制(主从、级联复制)及时间点恢复(PITR)机制,保障数据安全。
-
活跃的开源社区与商业友好许可
- 采用自由的 PostgreSQL 许可证,允许用户自由使用、修改和分发,无需担心版权问题。
- 拥有庞大而活跃的开源社区,持续提供更新、补丁和新功能,文档全面且质量高。
-
高级功能支持
- 支持表继承,可用于实现某种形式的表分区。
- 提供全文搜索功能,内置多种文本搜索配置和词典。
- 支持逻辑复制和发布/订阅功能,便于实现数据同步和异构系统集成。
-
强大的安全性
- 提供灵活的权限管理系统,支持基于角色的访问控制(RBAC)。
- 支持列级权限控制、SSL 连接加密、数据加密(如 pgcrypto)以及与外部认证服务的集成。
- Rust 错误处理
- Rust 模式匹配
- Actix web 路由
- Actix web 文件上传
- Actix web 数据获取 (Query,Body,FormData)
- Jsonwebtoken Token签发和验证
- 小程序服务端 access token 获取
- 小程序 openid 获取
- PostgreSQL 普通查询、插入、更新
- PostgreSQL 多表联合查询
项目地址
公众号

