Size: a a a

2021 March 01

VP

Vladimir Petrakovich in pro.jvm
elendili
То есть вынос всех конфигурационных ключей в переменные окружения? Выглядит неплохо, даже хорошо.
А как быть когда ключей сотни?
Сотни разных настроек, которые зависят от окружения? Ну как-то это много.
источник

e

elendili in pro.jvm
Vladimir Petrakovich
Сотни разных настроек, которые зависят от окружения? Ну как-то это много.
ну, в статье же предлагают не использовать файлы конфигурации совсем, т.к. много проблем от них, а передавать настройки в переменных окружения.
Получается весь конфигурационный файл нужно залепить в оные. Вот я и думаю, каково это 🙂
источник

VP

Vladimir Petrakovich in pro.jvm
elendili
ну, в статье же предлагают не использовать файлы конфигурации совсем, т.к. много проблем от них, а передавать настройки в переменных окружения.
Получается весь конфигурационный файл нужно залепить в оные. Вот я и думаю, каково это 🙂
Не помню точно, что там написано, но мне кажется главным чтобы эти настройки были переопределяемы через переменные окружения.
Не вижу ничего плохого в том, чтобы забить в файл настройки, которые не будут меняться никогда.
Или вы spring.application.name тоже хотите в переменные окружения засунуть?
источник

AK

Andrey Karepin in pro.jvm
Artjom Kalita
я бы на самом деле лучше бы делал кондишенал включения бина через пропертю
+ за @ConditionalOnProperty, намного удобнее профилей
источник

e

elendili in pro.jvm
Vladimir Petrakovich
Не помню точно, что там написано, но мне кажется главным чтобы эти настройки были переопределяемы через переменные окружения.
Не вижу ничего плохого в том, чтобы забить в файл настройки, которые не будут меняться никогда.
Или вы spring.application.name тоже хотите в переменные окружения засунуть?
Не хотим, у “нас” сервисы на голой JDK, и у них конфигурационные файлы очень велики. И нет настроек, которые не меняются. 🙂
И многие настройки с авто-релоадом. Есть и настройки в окружении, например, где взять файл конфигурации.
В общем, я настройки менеджю целым файлом: например, если для теста надо изменить настройку, то 2 варианта у меня: файл конфигурации конструируется тестовым фреймворком целиком и подается на вход приложению. Либо, для интеграций, через автотестовую магию меняются конкретные строки в файле на месте через SSH.
источник

A

Artjom Kalita in pro.jvm
если у вас много настроек с необходимостью авторелоада, то может эти все настройки вынести в отдельный конфигурационный сервис ?
источник

e

elendili in pro.jvm
Artjom Kalita
если у вас много настроек с необходимостью авторелоада, то может эти все настройки вынести в отдельный конфигурационный сервис ?
Я только за. но легаси, маленькая команда, много продуктов, много внутренних заказчиков. В общем, “не сегодня”, ибо у моего непосредственного менеджмента нет политической силы почему-то. Есть и гораздо жестче производственные проблемы, чем конфигурация, с которой проблем то особо и нет - работает и ладненько.
В общем, тред не обо мне 🙂
Просто поинтересовался про 12факторную систему по вашей ссылке. Классная тема. Спасибо
источник

D

Dima in pro.jvm
Tim Ami
Всем привет! Подскажите как в @Profile исключить два профиля? @Profile("!dev") - работает, а
@Profile({"!dev","!test"}) - нет.
вам уже посоветовали
источник

D

Dima in pro.jvm
но лучшая практика - отдельные КОНКРЕТНЫЕ настройки + conditional бины
источник

A

Artjom Kalita in pro.jvm
@dmsol мне кажется ты писал что сваггер сильно тормозит запуск спринг бут приложения ?
источник

V

V in pro.jvm
Artjom Kalita
@dmsol мне кажется ты писал что сваггер сильно тормозит запуск спринг бут приложения ?
в чате kotlin jvm
источник

p

podocodenick in pro.jvm
Ребят, привет! В последнее время начал почему-то думать, что такой код плохой

private void someMethod(String someText) {
   someView.setOnClickListener(v -> {
       someAnotherMethod(someText);
   });
}

не обязательно именно так, но суть вы поняли - любой кейс, где какая-то переменная находится вне анонимного класса.
Скажите, надо ли такого кода избегать? Ну например делать вот так

private void someMethod(String someText) {
   someView.setTag(someText);
   someView.setOnClickListener(v -> {
       someAnotherMethod((String) v.getTag());
   });
}

Есть ли в этом вообще смысл? Чем плох и плох ли? Что посоветуете переучить/перечитать чтобы разобраться?
источник

WT

Waldemar Tsiamruk in pro.jvm
Tim Ami
@Profile({"!dev","!test"}) - запускаю с профилем dev - бин создается
ну так все правильно, если запятая == или
источник

WT

Waldemar Tsiamruk in pro.jvm
выходит dev != test == true


PS похоже уже ответили)
источник

WT

Waldemar Tsiamruk in pro.jvm
elendili
То есть вынос всех конфигурационных ключей в переменные окружения? Выглядит неплохо, даже хорошо.
А как быть когда ключей сотни?
часть в статический конфиг часть нет)
источник

WT

Waldemar Tsiamruk in pro.jvm
нельзя ж всему следовать слепо)
источник

e

elendili in pro.jvm
Waldemar Tsiamruk
нельзя ж всему следовать слепо)
Кощунство! Дяди в инетах всегда знают лучше. StackOverflow, как пример)
источник

WT

Waldemar Tsiamruk in pro.jvm
источник

WT

Waldemar Tsiamruk in pro.jvm
когда следуешь всем советам "гуру" не помня главнй принцип "гуру" постарше (kiss)
источник

WT

Waldemar Tsiamruk in pro.jvm
это хело типа fizzbuzz )
источник