naming for checkin from pool timeout
This commit is contained in:
parent
151dc4e387
commit
28ed4b41d0
|
@ -607,7 +607,7 @@
|
|||
prepare: :unnamed
|
||||
|
||||
config :pleroma, :connections_pool,
|
||||
receive_connection_timeout: 250,
|
||||
checkin_timeout: 250,
|
||||
max_connections: 250,
|
||||
retry: 0,
|
||||
retry_timeout: 100,
|
||||
|
|
|
@ -404,7 +404,7 @@ Advanced settings for connections pool. Pool with opened connections. These conn
|
|||
For big instances it's recommended to increase `config :pleroma, :connections_pool, max_connections: 500` up to 500-1000.
|
||||
It will increase memory usage, but federation would work faster.
|
||||
|
||||
* `:receive_connection_timeout` - timeout to receive connection from pool. Default: 250ms.
|
||||
* `:checkin_timeout` - timeout to checkin connection from pool. Default: 250ms.
|
||||
* `:max_connections` - maximum number of connections in the pool. Default: 250 connections.
|
||||
* `:retry` - number of retries, while `gun` will try to reconnect if connections goes down. Default: 5.
|
||||
* `:retry_timeout` - timeout while `gun` will try to reconnect. Default: 100ms.
|
||||
|
|
|
@ -34,7 +34,7 @@ def checkin(url, name)
|
|||
def checkin(url, name) when is_binary(url), do: checkin(URI.parse(url), name)
|
||||
|
||||
def checkin(%URI{} = uri, name) do
|
||||
timeout = Config.get([:connections_pool, :receive_connection_timeout], 250)
|
||||
timeout = Config.get([:connections_pool, :checkin_timeout], 250)
|
||||
|
||||
GenServer.call(
|
||||
name,
|
||||
|
@ -184,6 +184,7 @@ def handle_info({:gun_up, conn_pid, _protocol}, state) do
|
|||
time = :os.system_time(:second)
|
||||
last_reference = time - conn.last_reference
|
||||
current_crf = crf(last_reference, 100, conn.crf)
|
||||
|
||||
put_in(state.conns[key], %{
|
||||
conn
|
||||
| gun_state: :up,
|
||||
|
|
|
@ -24,8 +24,7 @@ defmodule Pleroma.Pool.ConnectionsTest do
|
|||
adapter = Application.get_env(:tesla, :adapter)
|
||||
Application.put_env(:tesla, :adapter, Tesla.Adapter.Gun)
|
||||
|
||||
{:ok, pid} =
|
||||
Connections.start_link({name, [max_connections: 2, receive_connection_timeout: 1_500]})
|
||||
{:ok, pid} = Connections.start_link({name, [max_connections: 2, checkin_timeout: 1_500]})
|
||||
|
||||
on_exit(fn ->
|
||||
Application.put_env(:tesla, :adapter, adapter)
|
||||
|
|
Loading…
Reference in New Issue