我想知道在向postgres数据库发出查询时,是否可以设置各种系统资源的上限。例如,“X查询在执行过程中最多只能使用40%的CPU”。类似地,还有内存、持久性存储IO等方面的限制。我希望防止一些DB用户子集的某些流氓查询完全锁定机器/数据库的资源,无论是因为查询计划无效,还是涉及的数据量对于某些查询参数而言显着不同。我猜想这不可能或不可行,如果是这样的话,我希望了解其原因。
ALTER USER user_name WITH CONNECTION LIMIT 2;
这可以帮助限制用户同时运行的进程数量。