Size: a a a

2020 October 22

ВК

Василий Кузнецов... in pro.elixir
постоянных переменных?
источник

АП

Артем Паньков... in pro.elixir
...> Settings.set(:http_timeout_ms, 10_000) # :scope omitted, defaults to :__global
...> Settings.get(:http_timeout_ms)
10000

Вот такое нужно, чтобы оно хранило внутри себя это где-то в dets
источник

SM

Sergei Maximov in pro.elixir
persistent_term?
источник

N|

Naiλ Gibaev | The Re... in pro.elixir
Артем Паньков
...> Settings.set(:http_timeout_ms, 10_000) # :scope omitted, defaults to :__global
...> Settings.get(:http_timeout_ms)
10000

Вот такое нужно, чтобы оно хранило внутри себя это где-то в dets
привет, вообще конечно выглядит как обычный Application.get_env и Application.set_env
источник

N|

Naiλ Gibaev | The Re... in pro.elixir
у Application под капотом тоже ETS
источник

АП

Артем Паньков... in pro.elixir
Naiλ Gibaev | The Red King
у Application под капотом тоже ETS
а надо dets
источник

N|

Naiλ Gibaev | The Re... in pro.elixir
а че за юзкейс для DETS? ты переписываешь конфиги изнутри приложения?
источник

P

Pavel in pro.elixir
А что будет если нода развалится и split brain?
источник

АП

Артем Паньков... in pro.elixir
Naiλ Gibaev | The Red King
а че за юзкейс для DETS? ты переписываешь конфиги изнутри приложения?
мне нужно хранить 1 постоянную переменную, которая будет существовать и после перезапусков ноды.
естественно, хочется сложить её в место попроще
источник

N|

Naiλ Gibaev | The Re... in pro.elixir
Артем Паньков
мне нужно хранить 1 постоянную переменную, которая будет существовать и после перезапусков ноды.
естественно, хочется сложить её в место попроще
почему её нельзя положить в конфиг-файл и просто перечитывать при запуске приложения?
источник

P

Pavel in pro.elixir
DETS это только на первый взгляд место попроще
источник

АП

Артем Паньков... in pro.elixir
Naiλ Gibaev | The Red King
почему её нельзя положить в конфиг-файл и просто перечитывать при запуске приложения?
потому что это некое "объявление" для проекта. его хочется задавать через консоль в моменты необходимости.
источник

N|

Naiλ Gibaev | The Re... in pro.elixir
ну, опять же, я бы настоял именно заложить все эти штуки в конфиг-файл, это и технически проще, и для devops намного удобнее, если я не упускаю какой то детали у тебя
источник

АП

Артем Паньков... in pro.elixir
девопса не существует
а с конфигом это наоборот сложнее, коммитить, деплоить. плюс это явно неправильное направление, так как в будущем оно должно меняться через веб-интерфейс
источник

АП

Артем Паньков... in pro.elixir
Sergei Maximov
persistent_term?
судя по тому, что в доке, это аналог ets, а значит мрёт при перезапуске
источник

АП

Артем Паньков... in pro.elixir
хотя название обещало большее))
источник

P

Pavel in pro.elixir
Если это Phoenix или у тебя есть Ecto заведи табличку, положи туда значение, читай его по ключику во время старта, клади в ets. Через PubSub можно кастить обновление ключика
источник

N|

Naiλ Gibaev | The Re... in pro.elixir
Артем Паньков
девопса не существует
а с конфигом это наоборот сложнее, коммитить, деплоить. плюс это явно неправильное направление, так как в будущем оно должно меняться через веб-интерфейс
> devops не существует
ага, держи в курсе
> через веб-интерфейс
ну тогда подключай БД нормальную в таком случае, postgres какой нить и кешируй при запуске.
источник

АП

Артем Паньков... in pro.elixir
Naiλ Gibaev | The Red King
> devops не существует
ага, держи в курсе
> через веб-интерфейс
ну тогда подключай БД нормальную в таком случае, postgres какой нить и кешируй при запуске.
решение прям гениально, заводить табличку для 1 переменной
источник

АП

Артем Паньков... in pro.elixir
воздержусь
источник