PG_NET 扩展安装与使用指南
1. 目录结构及介绍
PG_NET 是一个 PostgreSQL 扩展,它允许数据库执行异步(非阻塞)的 HTTP/HTTPS 请求。下面是该扩展在 GitHub 存储库中的基本目录结构及其简介:
.
├── docs # 文档目录,包含了扩展的技术说明和用户指南。
├── github # 配置GitHub相关工作流程的文件夹。
├── nix # Nix 构建系统相关的配置文件。
├── sql # 包含SQL脚本,用于创建扩展和其内部使用的表等。
├── src # 主要源代码目录,存放C语言编写的扩展实现。
├── test # 测试目录,包含单元测试和示例代码来验证功能。
├── clang-format # 格式化工具配置文件,保证代码风格一致。
├── gitignore # Git忽略文件列表。
├── LICENSE # 许可证文件,遵循 Apache-2.0 协议。
├── Makefile # 构建规则文件,指导如何编译和安装扩展。
├── README.md # 主要的读我文件,提供快速入门和概览。
└── mkdocs.yml # MkDocs 配置文件,用于构建技术文档网站。
2. 项目的启动文件介绍
本扩展不直接有一个“启动文件”以传统应用程序意义存在,因为它的激活和使用是通过PostgreSQL的环境和命令完成的。然而,安装过程中关键的“编译与安装”指令通常由 make && make install
命令触发,这可以在 Makefile
中找到定义。此外,在PostgreSQL端,激活扩展的操作是通过SQL命令 CREATE EXTENSION pg_net;
实现,此步骤发生在数据库环境中,并非通过直接运行某个文件。
3. 项目的配置文件介绍
对于PG_NET扩展,配置主要涉及以下几个方面:
-
postgresql.conf调整:为了使PG_NET生效,需在PostgreSQL服务器的配置文件
postgresql.conf
中添加以下两行:shared_preload_libraries = 'pg_net'
如果要在特定数据库上使用而非默认数据库,则还需添加:
pg_net.database_name = '<dbname>'
-
扩展配置变量:PG_NET自身也引入了配置变量,这些可以通过SQL命令设置,如
pg_net ttl
和pg_net batch_size
,这些配置控制着请求队列处理的行为。 -
无直接配置文件:不同于某些服务或应用有独立的配置文件,PG_NET的配置更多依赖于上述两个环节和数据库内的参数调整,没有单独的、传统的配置文件路径需要手动编辑。
综上所述,PG_NET扩展的部署与配置主要通过PostgreSQL系统的内置机制和SQL指令进行管理,而不依赖于外部启动脚本或显式的配置文件。