主要观点:Neon 是 AWS Aurora Postgres 的开源无服务器替代品,分离存储和计算,通过在节点集群中重新分配数据来替代 PostgreSQL 存储层。提供快速开始、架构概述、本地开发环境运行、测试、文档等方面的内容。
关键信息:
- 可通过 Neon Free Tier 创建无服务器 Postgres 实例,用偏好的客户端连接或使用在线 SQL 编辑器,也可本地编译运行项目。
- 架构由计算节点和 Neon 存储引擎组成,包含 Pageserver 和 Safekeepers 组件。
- 本地开发环境安装依赖(Linux、macOS),可构建并运行 neon 数据库,包括启动 pageserver、postgres 等,还可创建分支和运行 postgres。
- 用
cargo-nextest
运行 Rust 单元测试,确保依赖安装后用特定命令运行集成测试。 - 可使用
flamegraph-rs
或flamegraph.pl
生成火焰图,通过make clean
和make distclean
清理源树,文档涵盖多个方面。
重要细节: - 在不同系统(Ubuntu/Debian、Fedora、Arch 等)上安装依赖的具体包名及版本要求。
- Rust 版本通过
rust-toolchain.toml
定义,rustup 用户可使用rustup override
命令设置特定工具链,非 rustup 用户需手动验证工具链版本。 - 运行测试时要注意默认运行的模式和版本,本地测试可指定运行某一组排列。
- 清理时要注意
make distclean
会删除更多构建和配置相关的文件及.neon
目录中的数据库。 - 加入开发需阅读 CONTRIBUTING.md 了解项目代码风格等,通过 sourcetree.md 熟悉源树布局,学习 PostgreSQL 内部可查看相关网站。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。