【问题标题】:Using sequelize with multiple instances of the same db对同一数据库的多个实例使用 sequelize
【发布时间】:2017-10-31 01:39:33
【问题描述】:

我想为多个数据库主机 (postgres) 建立池连接,以便在其中一个崩溃时,我的应用程序保持运行。换句话说,我在不同的主机上安装了同一个数据库的多个实例(保证同步)。我想续集到两个数据库的连接池。这可以直接用sequelize吗?如果没有,最简单的方法是什么?

【问题讨论】:

    标签: node.js postgresql sequelize.js


    【解决方案1】:

    您需要设置一个 Postgres 集群,然后从 Sequelize 连接到该集群。配置在服务器端完成,对客户端是透明的。

    https://wiki.postgresql.org/wiki/Replication,_Clustering,_and_Connection_Pooling

    Sequelize 的连接池在连接中定义,请在文档中查找options.pool。

    http://docs.sequelizejs.com/class/lib/sequelize.js~Sequelize.html

    【讨论】:

    • 感谢您的回复。我不想设置 postgres 集群。原因是这些数据库实际上是区块链节点的一部分(将数据写入数据库)。我想用各自的数据库运行 2 个节点以保证正常运行时间。如果我只是对数据库进行集群,那么我只能用一个节点写入它(这将是一个故障点)。正如我所说,我有 2 个保证同步的数据库。有什么办法可以使用 sequelize 连接池来汇集来自多个数据库的连接?
    • 你绝对想要一个 Postgres 集群。您可以使用多种方案,但如果是为了保证正常运行时间,我会使用一个作为主要方案,并在主要方案出现故障时通过某种故障转移复制到另一个方案。这不是 Sequelize 可以做到的。
    猜你喜欢
    • 2012-10-16
    • 1970-01-01
    • 1970-01-01
    • 2017-02-11
    • 1970-01-01
    • 2012-04-12
    • 2012-10-01
    • 2017-12-08
    • 2019-11-30
    相关资源
    最近更新 更多