Подскажите пожалуйста по поводу счётчика в .NET methods-jitted-count - я

же правильно понимаю, что он означает сколько методов было скомпилировано прямо во время работы приложения? При этом в моём случае он постоянно растёт, это что получается кодогенерация какая-то или какие-то dll постоянно подгружаются/выгружаются?

Прост заметил такую особенность сегодня, а на что она может повлиять, не понимаю, но выглядит страшно)

13 ответов

18 просмотров

Кодогенерация постоянная. Но потом должно устаканиться.

Sergey-Rubtsov Автор вопроса

Хм.. Момент в том, что ничего такого намерено не было использовано. А лямбды или экспрешены сюда могут относиться?

Sergey Rubtsov
Хм.. Момент в том, что ничего такого намерено не б...

ну да, лямбды для EF Core компилируются, Expression TRees это динамическая компиляция

Sergey-Rubtsov Автор вопроса
Andrii Kurdiumov
Кодогенерация постоянная. Но потом должно устакани...

> Но потом должно устаканиться. А если не устаканивается, то это означает, что всегда тратится время на JIT-компиляцию, но это не означает что в какой-то момент приложение захлебнётся?

Sergey-Rubtsov Автор вопроса
Andrii Kurdiumov
мы щас о какой нагрузке говорим? )

80 RPS, или какая-то другая информация нужна?

Sergey-Rubtsov Автор вопроса
Andrii Kurdiumov
ну и как оно захлебнется?

в том то и дело, что я не понимаю( Я увидел графики, которые уверено только растут в течении нескольких часов после последней доставки, и ранее такого поведения я не встречал

Sergey-Rubtsov Автор вопроса

В итоге я нашёл причину проблемы в моём случае. Виновником оказалась библиотека FluentValidation 11.5.1. А конкретно, попытка использовать правило для всего объекта запроса целиком. В моём случае, между свойствами объекта есть зависимость, поэтому правило было описано таким образом:

Sergey-Rubtsov Автор вопроса

В итоге я нашёл причину проблемы в моём случае. Виновником оказалась библиотека FluentValidation 11.5.1. А конкретно, попытка использовать правило для всего объекта запроса целиком. В моём случае, между свойствами объекта есть зависимость, поэтому правило было описано таким образом: RuleFor(request => request).Must((request, => request.CurrentCountryId.HasValue || request.RegistrationCountryId.HasValue)

Sergey-Rubtsov Автор вопроса

В итоге я нашёл причину проблемы в моём случае. Виновником оказалась библиотека FluentValidation 11.5.1. А конкретно, попытка использовать правило для всего объекта запроса целиком. В моём случае, между свойствами объекта есть зависимость, поэтому правило было описано таким образом: RuleFor(request => request).Must(request => request.Property1.HasValue || request.Property2.HasValue); И это приводило к тому, что EventCounter: methods-jitted-count постоянно увеличивался. Как только переписал правило так: RuleFor(request => request.Property1).Must((request, _) => request.Property1.HasValue || request.Property2.HasValue) EventCounter: methods-jitted-count перестал бесконечно увеличиваться.

Sergey-Rubtsov Автор вопроса
Sergey Rubtsov
В итоге я нашёл причину проблемы в моём случае. Ви...

Но всё таки я не могу понять, существуют ли тут какие-то реальные проблемы, кроме того, что один конкретный счётчик начинает показывать бесполезные значения. По факту сервис продолжал нормально работать @kant2002 Подскажи пожалуйста, как ты думаешь, эта проблема достойна того, чтобы её зарепортать в репозиторий библиотеки?

Похожие вопросы

Обсуждают сегодня

Всем привет) Я попробовал турбо роутер октябрьский. Вроде доволен, но возникла проблемка) Бутстраповские модалки плодят .modal-backdrop элементы Если модалка открыта, должне...
Виталий
3
Так а кто может спарсить всех участников чата? Идишники
Magic
18
да пофиг на капчу зашел в чат и молчишь при этом ты нонейм? пошел вон
Magic
17
Как удалить health check в Consul? Казалось бы, это должно быть не сложно, но я не могу найти в документации ничего про это, только про добавление service с health check "в н...
Roman
2
Я тебе про общие вопросы, а не про узконаправленные . Ты че будешь в чате спрашивать как хтмл разметку сделать?!
rusteg
3
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
13
Всем доброго вечера! Хочу поделиться своим злоключением с человеком, который, как оказалось сюда тоже скидывал свое резюме. Жаль, что я вашу группу не нашел раньше… человек ки...
Роман Ахмедзянов
4
Privet! Mozhet jesti ideji - nemogu sdelatj upload backup s filestore cerez WEB. Fail okolo 450mb, eto mozhet bitj prichinoi? Nemogu ponjatj..kak zagruzitj backup... Poluchaju...
Matiss 🤘 Black Oak IT 🌳 Batumi 🌴 Latvija
5
Нужно магазин с тильды на опен кат перенести Есть кто умеет? В лс
Magic
8
Хотя вроде админка показывает удаленные модели, да? @dblackCat
Виталий
2
Карта сайта