【问题标题】:Limits of writing to Postgres写入 Postgres 的限制
【发布时间】:2019-08-31 07:42:42
【问题描述】:

我们被指示重建本质上可以具有许多潜在子输入(范围从 1 到 100 个输入)的表单。

让我担心的变化是,我们希望在输入时为每个输入编写每个字段,并通过 Websockets 传输。

例如,如果用户键入“hello”,我们将向 Postgres 写入 5 次:for “h”、“he”、“hel”、“hell”、“hello”。

我知道这在用户端很好,因为它会在使用时保存,他们不必担心“保存”表单。但是,我担心我们会大量反对向 Postgres 写入的问题。

我们正在使用具有 4 GB RAM、64 GB 存储、120 个连接的 Postgres 实例。

我们应该关注什么级别的写入/秒以及我们可以通过哪些方式来衡量和缓解问题?

【问题讨论】:

  • 您应该只在用户提交表单后将输入发送到数据库,而不是每次击键

标签: database postgresql persistent-storage


【解决方案1】:

如果您开始每秒写入超过几千次,您应该担心。除非您可以使用 HOT 更新(修改后的列上没有索引),否则您将无法支持更低的更新率,因为 autovacuum 无法跟上。

我认为在数据库中存储部分用户输入的概念是疯狂的。您的应用程序应该等到输入完成,然后验证数据是否正确,然后才将其存储在数据库中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-13
    • 1970-01-01
    • 2020-11-10
    • 2019-12-23
    • 1970-01-01
    • 1970-01-01
    • 2020-03-19
    • 2012-06-09
    相关资源
    最近更新 更多