平台

性能调优


Supabase 平台会自动优化您的 Postgres 数据库,以充分利用项目计划的计算资源。但是,这些优化基于对项目使用类型的一些假设,因此针对您的特定工作流程调整数据库可能会获得更好的结果。

检查查询性能#

未优化的查询是导致数据库性能下降的主要原因。要分析查询的性能,请参阅 调试和监控指南

优化连接数#

Postgres 和 Supavisor 的默认连接限制基于您的计算规模。请参阅 计算附加组件 部分中的默认连接数。

如果连接数不足,您在连接到数据库时将收到以下错误

1
$ psql -U postgres -h ...
2
FATAL: remaining connection slots are reserved for non-replication superuser connections

在这种情况下,您可以考虑

配置客户端使用更少的连接#

您可以使用 pg_stat_activity 视图来调试哪些客户端正在保持数据库上的打开连接。pg_stat_activity 仅公开与数据库的直接连接信息。有关连接到 Supavisor 的连接数的信息,可通过 指标端点 获取。

根据涉及的客户端,您可能能够配置它们以使用更少的连接(例如,通过限制允许使用的最大连接数),或者将特定工作负载切换到通过 Supavisor 连接。可以根据流量快速扩展和缩减的瞬态工作流程(例如,无服务器函数)尤其受益于使用连接池而不是直接连接到数据库。

允许更高的连接数#

您可以使用 自定义 Postgres 配置 来配置 Postgres 连接限制以及其他参数。

企业版#

联系我们,如果您需要帮助调整数据库以适应您的特定工作流程。