1

我有一个应用程序,当未优化时,将需要多次写入 postgreSQL 数据库以响应实时信息 - 每秒多达 1 次!!!

因此,我想通过 redis/redisco 或 memcache 缓存这个数据流,然后每 5 分钟在我的 postgreSQL 数据库中执行一次 bulk_create。

据我了解,django memcache 将存储在内存中,但是当需要写入时,可以使 memcache 无效。

或者,我正在考虑将信息放入 redis 中,可能使用 redisco 模型,并每隔约 5 分钟对数据库执行一次 bulk_create。

3部分问题:

  • 哪个选项更适合长期扩展?
  • 每种都有哪些优点/缺点?
  • 最后,有没有人有任何我可以阅读的参考资料/教程?

谢谢!

4

1 回答 1

3

过早的优化是万恶之源。PostgreSQL 能够处理繁重的混合读/写工作负载。从那里开始,并根据需要开始探索其他选项,但是使用高端服务器,当 PostgreSQL 9.2 发布时,您将能够在 PostgreSQL 9.2 上获得高达每秒约 14000 次写入(取决于查询细节)。使用 9.1,您每秒最多可以写入约 3000 次,差异与锁定行为有关。

暂时不要优化。如果您开始每秒进行数百次写入,那么也许这是值得的。然而,特别是如果这些是简单的写入,你最好保持你的架构简单。

于 2012-08-30T08:40:29.183 回答