我有一个在 Erlang 中的服务。我正在尝试连接到该服务。但是,有时连接创建会超时。我相信这可能是因为服务可能很忙。这是周期性的,一段时间后重新执行我的程序时效果很好。
我不确定 Erlang 中如何定义连接池。我正在尝试研究相同的内容(不幸的是,到目前为止没有太大的成功)并且想更改连接池的大小。我主要研究在执行 jsonrpc 命令时如何完成连接管理。根据文档,只有通过任何通信在客户端和服务器之间创建一个新连接。我正在尝试确定如何更改此上限(如果有)。
谢谢
我有一个在 Erlang 中的服务。我正在尝试连接到该服务。但是,有时连接创建会超时。我相信这可能是因为服务可能很忙。这是周期性的,一段时间后重新执行我的程序时效果很好。
我不确定 Erlang 中如何定义连接池。我正在尝试研究相同的内容(不幸的是,到目前为止没有太大的成功)并且想更改连接池的大小。我主要研究在执行 jsonrpc 命令时如何完成连接管理。根据文档,只有通过任何通信在客户端和服务器之间创建一个新连接。我正在尝试确定如何更改此上限(如果有)。
谢谢
我不确定 Erlang 中如何定义连接池。
Erlang 中有一些著名的连接池,例如ranch和swarm,您可以在此处找到它们的摘要。
我正在尝试确定如何更改此上限(如果有)。
例如,在牧场的情况下,您可以这样设置连接池大小:
AcceptorNumbers = 100,
{ok, _} = ranch:start_listener(
ListenerRef,
AcceptorNumbers,
Transport, [{port, Port}],
Protocol, Options
).
您还可以在 OTP 行为之上创建自己的连接池。例如,gen_fsm
保存客户端连接并受到监督的通用有限状态机 () 池可以像本教程一样简单。