有没有办法为 PostgreSQL 用户分配优先级?

问题描述 投票:0回答:1

postgresql 是否能够为数据库的用户分配“优先级”,以便决定我们为用户分配多少资源(内存、CPU 等)?

像云服务中的订阅模式一样思考:拥有高级订阅的客户应该分配足够(更大)的资源来满足 SLA,而订阅计划较低的用户可能会遇到一些性能下降,因为我们没有分配大量资源.

我知道我们可以在 postgres 中调整一些参数,例如 work_mem 或maintenance_work_men,但这些是“进程”级别参数,而不是用户级别。

postgresql memory resources cpu
1个回答
0
投票

您可以使用

work_mem
 在每个用户级别设置 
ALTER USER ... SET ...

https://www.postgresql.org/docs/current/sql-alteruser.html

但是 - 这可能不会达到你想要的效果。如果用户 A 的查询现在溢出到磁盘并需要 5 分钟才能运行,则与为 A 提供更多资源相比,您对用户 B 服务的影响可能更大。如果用户 A 持有锁,那么这可能会让每个人的生活变得困难......

© www.soinside.com 2019 - 2024. All rights reserved.