Caching teure Berechnung in Elixier

Ich habe eine Webanwendung in Elixir, die so aussieht

defmodule Test do
  use Plug.Router

  plug :match
  plug :dispatch

  def expensiveComputation() do
     // performs an expensive computation and
     // returns a list
  end

  get "/randomElement" do
    randomElement = expensiveComputation() |> Enum.random
    send_resp(conn, 200, randomElement)
  end

end

Wenn ich ein @ ausstelGET Anfrage zu/randomElement, expensiveComputation wird gerufen. DasexpensiveComputationie Ausführung der @ -Funktion dauert sehr lange, sie gibt jedoch bei jedem Aufruf dasselbe zurück. Was ist der einfachste Weg, um das Ergebnis zwischenzuspeichern, damit es beim Start nur einmal ausgeführt wird?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage