Pull to refresh
19
0
Бабанин Максим @PqDn

Kotlin/Java Developer

Send message

Кажется jmh надо запускать в разрезе сравнения как минимум двух стратегий new / old. И только тогда когда в одном прогоне есть разница хотя бы процентов в 20% можно говорить, что новый код лучше.

Если быстро нужно по проекту пробежаться, чтобы найти узкие места лучше профилировщиком посмотреть в той же idea

Воообще корутины это про то, где надо высоко конкурентный код писать,
виртуальный потоки это про то, что надо кучу последовательных запросов (в другие подсистемы) сделать на блокирующие запросы, при этом сервер сам сможет кучу таких запросов выдержать

При этом в корутины котлина, чтобы интегрировать виртуальные потоки для блокироющего IO, надо заместо Dispatchers.IO, на Executors.newVirtualThreadPerTaskExecutor().AsCoroutineDispatcher() заменить

Но имхо, Dispatchers.DEFAULT будет быстрее (тк нет оверхеда на манипуляции со стеком), и надо использовать не блокирующие IO, если у вас Spring, используйте WebClient, там под капотом на тред пуле с обычными потоками максимально эффективно все сделается. А результат вам уже можно будет обработать в Dispatchers.DEFAULT

Хороший поинт. Но в реальности надо самому управлять структурами данных.

Я кстати знаю, что Jackson, при десериализации автоматически выбирает именно HashSet, если в моделе указан интерфейс Set от енума. Так что без подсказок наш софт врятли будет работать наиболее эффективно

да, мы этим и пользуемся

Надо только быть аккуратными с гистограмными метриками, если вы храните их скажем месяц, может очень много накапать данных

Мы после обновления до 2.6 спринг бута, внезапно обнаружили, что у нас прометеус начал отдавать метрики по 2-3 мегабайта. А было до этого 150-200кб. Как оказалось в спринге решили метрики для редиса по дефолту сделать гистограмными.

гастрит щас у каждого второго есть

А содержание метода, который оптимизировали, большая тайна?

я кстати не вкусах, может минималка и будет. Так как про ТД говорили...

ну так у кого семья и дети, наверно это не для них.

Это прежде всего студентам, первый опыт

нам просто бюджет не согласовали, у нас не все так грустно

в целом по итогам 2022 года бизнес прибыльный

Мне кажется на собесе спрашивать, как работает дестракшен, это черезчур,

сам недавно узнал, как это под капотом работает, хотя на котлине около 3х лет уже прогаю

можно файл руками написать добавку к библиотеке, через расширения

val Int.кг: Kilogramm
    get() = this.kg

Но поддерживать сорцы на двух языках тот еще выстрел в ногу

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

Ну в целом простор для атак будет очень большой,
хотя бы потому что тема новая, и ни кто в телефонах скорей всего нормальную защиту и не делал

на некоторых телефонах, если кабель к компу подключаешь, сразу есть доступ к файловой системе...

Очень странная статистика, зарплаты вырости, причем этак на 25-40% в бекенде, для уровня midle+

ну знаете по разному бывает, я умел на фануках прогать когда только технарь закончил

правда в итоге в чистом IT работаю

забавно, монетизация через контент с рекламой на окко уже есть. Хоть где-то мы нетфликс опередили

1 В заголовке (лицевой части) ничего не написано, что это именно для новичков
2 Кажется, что создание каркаса, это немного другая тема, "Знакомство со Spring" или "Hello Spring"

3 В статье приведены портянки логов, вместо того, чтобы просто написать, что в логах будет такая строка с таким текстом, ctrl + F нажать, это уровень даже не джуна
4 Код приведен избыточном виде, куча в статье импортов и все такое, Habr дает редакторам возможность колапсить любой второстепенный текст

В итого  Spring Batch вроде бы классная тема, и не только для новичков, но статью даже читать не хочется, т.к. много в статье мусора на который время тратить не хочется

Странно, что такой пост не от джуна, а от целой IT компании

1
23 ...

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity