I’ve disabled the connection pool and wrote a small testing Mix script to load test the behavior. I’m seeing no :killed yet, but will continue testing over the following days under many conditions (including starving the system of memory).
Reporting back in a bit.
@impl Mix.Task
def run(_) do
{:ok, pid} = Task.Supervisor.start_link()
Enum.map(0..100, fn _ ->
Task.Supervisor.async(pid, fn ->
HTTPoison.start()
req =
HTTPoison.post!(
"http://localhost:4000/v1/events/",
Jason.encode!(%{
subscriber_id: "sub_0000",
name: "test.event",
payload: %{
hello: "world"
}
}),
[{"Authorization", "Bearer key_0000"}, {"Content-Type", "application/json"}]
)
Logger.debug("Sent request, received #{req.status_code}")
end)
end)
|> Task.await_many()
end


















