我们的 Django 测试变得越来越慢,很多时间都花在cursor.execue()
.
现在大致有两种方法:重写测试以模拟 ORM,或者使 PostgreSQL 更快。
这个问题是关于“让 PostgreSQL 更快”。
如果 ACID 的 D (Durability) 不重要,我能做些什么来提高 PostgreSQL 的速度。一切都可以保存在 RAM 中。
约束:这个问题是关于你可以在不修改 Django/Python/SQL 代码的情况下做什么。
我们的 Django 测试变得越来越慢,很多时间都花在cursor.execue()
.
现在大致有两种方法:重写测试以模拟 ORM,或者使 PostgreSQL 更快。
这个问题是关于“让 PostgreSQL 更快”。
如果 ACID 的 D (Durability) 不重要,我能做些什么来提高 PostgreSQL 的速度。一切都可以保存在 RAM 中。
约束:这个问题是关于你可以在不修改 Django/Python/SQL 代码的情况下做什么。
始终使用
UNLOGGED
表格设置
shared_buffers
足够大以包含整个数据库如果您有更大的查询,请增加
work_mem
有足够的 RAM 来容纳
shared_buffers
加倍work_mem
的客户端连接数通常,您可以通过调整最常使用的查询来获得最大收益。