You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I know the use of meta-programming is fun. But the BEAM doesn't handle loading thousands of modules very well. We have several Google libraries in our deployment Elixir and just loading Google API libraries takes over a minute!!! OVER A MINUTE for a few APIs!!!!
iex-S mix run --no-startfn->times=Application.loaded_applications()|>Enum.map(fn{app,_desc,_vsn}->modules=Application.spec(app,:modules){time,_result}=:timer.tc(fn->Enum.each(modules,&Code.ensure_loaded!/1)end){app,System.convert_time_unit(time,:microsecond,:millisecond)}end)|>Enum.sort_by(&elem(&1,1),:asc)Enum.each(times,&IO.inspect/1)times|>Enum.map(&elem(&1,1))|>Enum.sum()|>IO.inspect()end.()
I know the use of meta-programming is fun. But the BEAM doesn't handle loading thousands of modules very well. We have several Google libraries in our deployment Elixir and just loading Google API libraries takes over a minute!!! OVER A MINUTE for a few APIs!!!!