微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

postgresql – 将postgres完全保留在内存中

我正在运行各种测试,这些测试在数据库中花费了大量时间.

我想把它全部保留在内存中并且不要触摸数据库,希望这会加快速度.就像使用sqlite3的内存中选项一样.我不需要持久性/持久性/诸如此类,测试后一切都会立即丢弃.

那可能吗?我尝试调整我的postgres内存相关变量(如下面的解决方案),但这似乎并没有影响它执行的db写入次数,我找不到任何看起来像’内存’选项的东西.

http://www.voidcn.com/article/p-wcfmsufg-buc.html

解决方法

我前段时间写了一篇详细的帖子:

Optimise PostgreSQL for fast testing

您可能会发现它内容丰富;它涵盖了使Postgresql在没有持久性的情况下运行的选项以及对运行测试有用的其他调整.

您实际上并不需要内存操作.如果将Postgresql设置为不将更改刷新到磁盘,那么在实践中,适合RAM的DB几乎没有区别,对于不适合RAM的DB,它不会崩溃.

您应该使用在生产中使用的相同数据库引擎进行测试.使用sqlite,Derby,H2等进行测试然后在Postgresql上进行实时部署并没有多大意义……因为任何Heroku / Rails用户都可以从经验中告诉你.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐