- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在构建一个使用 poolboy 的 Erlang 应用程序用于连接池,以及 epgsql与 PostgreSQL 对话。
我想处理 PostgreSQL 故障转移,并且想知道构建应用程序的最佳方法是什么。
我应该或者可以:
最佳答案
使用epgsql
,当主数据库出现故障时,套接字连接将中止。由于连接进程链接到工作进程,因此工作进程终止并由主管重新启动。
因此,您所要做的就是(在 my_worker:init
中)处理来自 pgsql:connect
的错误,然后连接到备用服务器:
case pgsql:connect(Primary, Username, Password, Opts) of
{ok, C} -> {ok, #state{conn=C}};
_Other -> pgsql:connect(Standby, Username, Password, Opts)
end.
在我的(诚然非常粗略的)测试中,这似乎工作正常。
关于erlang - 使用 poolboy 和 epgsql 进行 PostgreSQL 故障转移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20690932/
我有一个耗时较长的迁移问题,我希望并行运行(它可以并行运行)。实际上,迁移就是获取数据库中的所有记录,并对每条记录执行耗时且耗时的操作。 有时个别记录迁移会挂起,所以我会花 10 分钟来完成。如果迁移
我使用 poolboy 创建了一个简单的应用程序,工作人员几乎是空的,但是当我停止应用程序时,我看到 lager 打印了以下错误: 10:50:26.363 [error] Supervisor {,
我正在构建一个使用 poolboy 的 Erlang 应用程序用于连接池,以及 epgsql与 PostgreSQL 对话。 我想处理 PostgreSQL 故障转移,并且想知道构建应用程序的最佳方法
我有一个由 poolboy 工作人员生成的函数 基本概述: Phoenix Controller 使用数据调用 Dispatcher 调度程序将数据传递给 Poolboy 工作线程 Poolboy 工
我是一名优秀的程序员,十分优秀!