我在docker容器内有一个Postgres数据库,针对它运行django测试。我想提高测试速度。最简单的方法(在我看来)是将postgres数据移动到tmpfs卷中。

这是我所做的:

docker run --name my_tfmps_test -d -p 5432:5432 \
-e POSTGRES_USER=postgres \
-e POSTGRES_PASSWORD=postgres \
-e POSTGRES_DB=my_database \
-e PGDATA=/var/lib/postgresql/data \
--tmpfs /var/lib/postgresql/data \
library/postgres

因为我指定了--tmpfs,所以我期望测试运行速度明显加快。不幸的是,这种情况并非如此。测试速度完全保持相同水平(给定或取5%)。

我的问题是:为什么测试速度没有变化?那我该怎么办?

额外信息:
  • MacOS 10.13.6
  • 引用https://docs.docker.com/storage/tmpfs/
  • 最佳答案



    如果表太小以至于已经适合ram了,那么tmpfs不会对您有所帮助,只需要对磁盘进行几次刷新即可。而且,如果该磁盘是SSD,那根本就不多。通常,您可以通过关闭Durability Options来加快测试套件的运行速度。

    10-04 16:17