Size: a a a

2020 April 10

LL

Lama Lover in pro.elixir
Pïg Grëënëst
full gc тебя не смущает?
Так ты кладёшь в :persistent_term только при инициализации и пачкой. Так что да, старт приложения замедлится на 1мс, да...
источник

P

Pavel in pro.elixir
а использовать для таких вещей config/releases.exs?
источник

P

Pavel in pro.elixir
оно вроде как и надо, чтобы при запуске все читать и не прибегать к Application.get_env, System.get_env
источник

LL

Lama Lover in pro.elixir
Pavel
оно вроде как и надо, чтобы при запуске все читать и не прибегать к Application.get_env, System.get_env
Ты же всё равно будешь читать этот конфиг через Application.get_env . И всё равно через стейт приложения
источник

P

Pavel in pro.elixir
Только на старте приложения
источник

P

Pavel in pro.elixir
Оно как раз для этого и надо, если тебе надо какие-то вещи читать на старте, а не во время компилирования релиза
источник

LL

Lama Lover in pro.elixir
Pavel
Оно как раз для этого и надо, если тебе надо какие-то вещи читать на старте, а не во время компилирования релиза
Это понятно, но наш разговор выше был не об этом
источник

P

Pavel in pro.elixir
Там выше есть вопрос про "замедление" от Application.get_env который обычно используется в связке с атрибутами и работает на уровне compile-time
источник

LL

Lama Lover in pro.elixir
Pavel
Там выше есть вопрос про "замедление" от Application.get_env который обычно используется в связке с атрибутами и работает на уровне compile-time
Где? Перешли
источник

P

Pavel in pro.elixir
Lama Lover
Application.get_env - это долго
Суть в этом
Вот тут
источник

LL

Lama Lover in pro.elixir
Pavel
Вот тут
Это не вопрос...
источник

P

Pavel in pro.elixir
Чтобы не было долго, можно юзать его в аттрибутах, а сами значения вытащить в config/releases.exs
источник

P

Pavel in pro.elixir
Так я и не говорю, что это вопрос, я говорю, как это решить
источник

LL

Lama Lover in pro.elixir
Я тебя не понимаю. Мы общались о том в какой erlang-структуре лучше всего хранить конфиг. А не как протащить конфиг в рантайм
источник

LL

Lama Lover in pro.elixir
Pavel
Чтобы не было долго, можно юзать его в аттрибутах, а сами значения вытащить в config/releases.exs
Что
источник

P

Pavel in pro.elixir
Я сказал - выше упоминалось то, что Application.get_env медленно, я сказал, как это решить
источник

P

Pavel in pro.elixir
Не больше, не меньше
источник

LL

Lama Lover in pro.elixir
Pavel
Я сказал - выше упоминалось то, что Application.get_env медленно, я сказал, как это решить
По-твоему, если написать
в config/releases.exs
config :my_app, :key, :value

А в lib/my_app.ex
defmodule X do
 @key Application.get_env(:my_app, :key)
 def f(), do: @key
end

То X.f вернёт :value ?

Если сначала собрать релиз, а потом добавить releases.exs
источник

P

Pavel in pro.elixir
Если написать в config/releases.exs`к примеру токен для доступа к `api - это будет быстрее, чем юзать System.get_env при авторизации и получении этого токена, да
источник

LL

Lama Lover in pro.elixir
Lama Lover
По-твоему, если написать
в config/releases.exs
config :my_app, :key, :value

А в lib/my_app.ex
defmodule X do
 @key Application.get_env(:my_app, :key)
 def f(), do: @key
end

То X.f вернёт :value ?

Если сначала собрать релиз, а потом добавить releases.exs
@w1n2k я правильно понял?
источник