Мой .NET Core 2 API, работающий в службе приложений, постоянно увеличивает использование памяти.Подойдя к точке, служба приложения перестает работать, и нам нужно ее перезапустить.В прошлый раз я сделал дамп памяти в Kudu и открыл его в VS2017.
Я новичок в анализе этого файла, но, сортируя по Inclusive Size, почти все объекты журналирования требуют много оперативной памяти.См. Прикрепленный экран печати:
Я думаю, что каким-то образом эти ресурсы не используются.Пример конфигурации моего Autofac-контейнера приведен ниже:
var assemblies = new Assembly[]
{
Assembly.Load("....")
};
builder.RegisterAssemblyTypes(assemblies)
.Where(t => !t.Name.EndsWith("CachedRepository") && !t.Name.EndsWith("DbCachedRepository"))
.AsImplementedInterfaces()
.InstancePerBackgroundJob() // Dispose after Hangfire job
.InstancePerLifetimeScope(); // Dispose after http request
Как я могу контролировать удаление объектов Logger?
Большое спасибо заранее.