您可以使用以下方法更改每个连接的默认行为statement_timeout
or query_timeout
。您可以在官方节点 pg 驱动程序中阅读有关所有可能配置的更多信息doc https://node-postgres.com/api/client。之间的区别statement
and query
?
语句是任何 SQL 命令,例如 SELECT、INSERT、UPDATE、DELETE。
查询是 SELECT 语句的同义词。
如何告诉 typeorm 使用这些配置?在下面添加这些参数extra
领域在ormconfig.js
:
{
type: "postgres",
name: "default",
host: process.env.DB_HOST,
port: 5432,
username: process.env.DB_USER,
password: process.env.DB_PASS,
database: process.env.DB_NAME,
synchronize: false,
logging: false,
entities: [
"dist/entity/**/*.js"
],
extra: {
poolSize: 20,
connectionTimeoutMillis: 2000,
query_timeout: 1000,
statement_timeout: 1000
},
}
注意使用poolSize
这里。这将创建一个包含 20 个连接的连接池,供应用程序使用和重用。connectionTimeoutMillis
确保如果池内的所有连接都忙于执行语句/事务,则池外的新连接请求将在connectionTimeoutMillis
多发性硬化症。有关连接池配置的更多信息pg-pool
here https://node-postgres.com/api/pool.