Elixir v1.16.0-rc.0 released

Yeah, I do scatter-gather processing like this often (and not only in Elixir). The GenServer becomes a bottleneck that is used both for back-pressure and to enforce rate limits (in case of having to use 3rd party API with quotas, for example). And then the GenServer actually delegates the actual work to Tasks spawned by a DynamicSupervisor. Sometimes I am also putting an upper limit to those spawned tasks but I have rarely found a need for it because the BEAM is extremely tolerant towards a huge amount of processes. The limits were dictated by an actual resource on the machine that can’t take too much hammering (like a hard drive) or external API rate limits, 100% of the time.