获取池的计数
Get the count of pool
我正在使用 HTTPoison 和 Hackney 池:
:hackney_pool.child_spec(:start, [checkout_timeout: ..., max_connections: 100]),
:hackney_pool.child_spec(:trigger, [checkout_timeout: ..., max_connections: 100]),
:hackney_pool.child_spec(:result, [checkout_timeout: ..., max_connections: 100])
...
HTTPoison.get('...', [...], [
...,
hackney: [pool: :start]
])
有什么方法可以捕获 running/queuing 连接的数量并实时监控它们吗?
谢谢
您可以将 get_stats/1 function on :hackney_pool
. This returns a proplist (keyword list in Elixir) 用于:
[ {:name, "pool_name"},
{:max, 100},
{:in_use_count, 19},
{:free_count, 81},
{:queue_count, 0}
]
然后你可以使用Keyword.fetch/2函数得到:in_use_count
值,它会告诉你活动连接数。不过,我不是 100% 确定您将如何监控它。
我正在使用 HTTPoison 和 Hackney 池:
:hackney_pool.child_spec(:start, [checkout_timeout: ..., max_connections: 100]),
:hackney_pool.child_spec(:trigger, [checkout_timeout: ..., max_connections: 100]),
:hackney_pool.child_spec(:result, [checkout_timeout: ..., max_connections: 100])
...
HTTPoison.get('...', [...], [
...,
hackney: [pool: :start]
])
有什么方法可以捕获 running/queuing 连接的数量并实时监控它们吗? 谢谢
您可以将 get_stats/1 function on :hackney_pool
. This returns a proplist (keyword list in Elixir) 用于:
[ {:name, "pool_name"},
{:max, 100},
{:in_use_count, 19},
{:free_count, 81},
{:queue_count, 0}
]
然后你可以使用Keyword.fetch/2函数得到:in_use_count
值,它会告诉你活动连接数。不过,我不是 100% 确定您将如何监控它。