Почему мой веб-API увеличивает использование памяти при каждом запросе? ⇐ C#
Почему мой веб-API увеличивает использование памяти при каждом запросе?
Я написал веб-API, который возвращает данные только из метода get, но при каждом моем запросе использование оперативной памяти увеличивается почти на 100 МБ. Это будет проблемой, если он работает на сервере и получает много запросов. Вот мой Program.cs:
с использованием Microsoft.Extensions.Hosting.WindowsServices; вар строитель = WebApplication.CreateBuilder(args); параметры var = новые параметры WebApplicationOptions { Аргументы = аргументы, ContentRootPath = WindowsServiceHelpers.IsWindowsService() ? AppContext.BaseDirectory: по умолчанию }; builder.Host.UseWindowsService(); builder.Services.AddControllers(); // Узнайте больше о настройке Swagger/OpenAPI по адресу https://aka.ms/aspnetcore/swashbuckle. builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); вар приложение = builder.Build(); app.Urls.Add("http://*:5436"); приложение.UseAuthorization(); приложение.MapControllers(); приложение.Выполнить(); А вот и единственный контроллер:
с использованием Npgsql; пространство имен F360Api.Controllers { [Апиконтроллер] [Маршрут("[контроллер]")] общедоступный класс PedidoController: ControllerBase { частная IConfiguration _config только для чтения; общедоступный PedidoController (конфигурация IConfiguration) { _config = конфигурация; } частный List ExecuteQuery (строковый запрос, параметры NpgsqlParameter[] = null) { List result = new List(); строка sqlDataSource = _config.GetConnectionString("F360Api"); используя (соединение NpgsqlConnection = новый NpgsqlConnection (sqlDataSource)) { соединение.Открыть(); используя (NpgsqlCommand cmd = новый NpgsqlCommand (запрос, соединение)) { если (параметры != ноль) { cmd.Parameters.AddRange(параметры); } используя (считыватель NpgsqlDataReader = cmd.ExecuteReader()) { пока (читатель.Читать()) { вар строка = новый словарь(); for (int i = 0; я
Я написал веб-API, который возвращает данные только из метода get, но при каждом моем запросе использование оперативной памяти увеличивается почти на 100 МБ. Это будет проблемой, если он работает на сервере и получает много запросов. Вот мой Program.cs:
с использованием Microsoft.Extensions.Hosting.WindowsServices; вар строитель = WebApplication.CreateBuilder(args); параметры var = новые параметры WebApplicationOptions { Аргументы = аргументы, ContentRootPath = WindowsServiceHelpers.IsWindowsService() ? AppContext.BaseDirectory: по умолчанию }; builder.Host.UseWindowsService(); builder.Services.AddControllers(); // Узнайте больше о настройке Swagger/OpenAPI по адресу https://aka.ms/aspnetcore/swashbuckle. builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); вар приложение = builder.Build(); app.Urls.Add("http://*:5436"); приложение.UseAuthorization(); приложение.MapControllers(); приложение.Выполнить(); А вот и единственный контроллер:
с использованием Npgsql; пространство имен F360Api.Controllers { [Апиконтроллер] [Маршрут("[контроллер]")] общедоступный класс PedidoController: ControllerBase { частная IConfiguration _config только для чтения; общедоступный PedidoController (конфигурация IConfiguration) { _config = конфигурация; } частный List ExecuteQuery (строковый запрос, параметры NpgsqlParameter[] = null) { List result = new List(); строка sqlDataSource = _config.GetConnectionString("F360Api"); используя (соединение NpgsqlConnection = новый NpgsqlConnection (sqlDataSource)) { соединение.Открыть(); используя (NpgsqlCommand cmd = новый NpgsqlCommand (запрос, соединение)) { если (параметры != ноль) { cmd.Parameters.AddRange(параметры); } используя (считыватель NpgsqlDataReader = cmd.ExecuteReader()) { пока (читатель.Читать()) { вар строка = новый словарь(); for (int i = 0; я
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение