Start Debugging

Тег: performance

59 статей · Страница1из6

Как настроить Kestrel для работы по HTTP/3 в ASP.NET Core 11
Полное руководство по включению HTTP/3 в Kestrel в ASP.NET Core 11: настройка конечной точки через HttpProtocols.Http1AndHttp2AndHttp3, требования MsQuic к платформе в Windows, Linux и macOS, почему первый запрос никогда не идёт по HTTP/3, проверка через HttpClient и middleware, настройка QuicTransportOptions и проблемы с firewall и прокси, из-за которых происходит тихий откат.
Как заменить new Regex(...) на генератор исходного кода [GeneratedRegex] в .NET 11
Полное руководство по переходу с new Regex(pattern, RegexOptions.Compiled) на [GeneratedRegex] в .NET 11: механическая переработка кода, частичные методы против частичных свойств, измеренные показатели запуска и пропускной способности, диагностики SYSLIB1040-1045 и два случая, когда генератор молча откатывается к закешированному Regex.
Как выполнять ресурсоёмкие вычисления в приложении Blazor WebAssembly с помощью Web Workers в .NET 11
Полное руководство по выносу ресурсоёмких вычислений с UI-потока Blazor WebAssembly в .NET 11: почему Task.Run не помогает, новый шаблон blazorwebworker, API WebWorkerClient с отменой и таймаутами, ограничения маршалинга JSExport и цена второй среды выполнения на каждый worker.
Как собрать веб-приложение Flutter с WebAssembly через flutter build web --wasm
Полное руководство по публикации веб-приложения Flutter, скомпилированного в WebAssembly, на Flutter 3.44: как выглядят две выпускаемые сборки, почему Firefox и Safari по-прежнему получают JavaScript из-за wasmAllowList в загрузчике, миграция с dart:html для dart2wasm, заголовки COOP/COEP, определяющие, работает ли skwasm в несколько потоков, и как в среде выполнения доказать, какую сборку реально загрузил браузер.
Как диагностировать утечку памяти в управляемой куче с помощью dotnet-gcdump и dotnet-dump
Полный рабочий процесс поиска утечки памяти в управляемой куче .NET 11: подтвердить рост через dotnet-counters, снять два gcdump и сравнить их, затем собрать дамп и с помощью dumpheap, gcroot и objsize в dotnet-dump analyze найти то, что до сих пор удерживает ссылку.
Output caching против response caching в ASP.NET Core 11: что выбрать?
Output caching -- это правильный вариант по умолчанию почти для любого серверного приложения на ASP.NET Core 11. Response caching выигрывает только тогда, когда ваша цель -- управлять кешами браузеров и прокси через HTTP-заголовки. Вот это решение, с матрицей возможностей и подводными камнями, которые определяют выбор.
Как добавить сжатие ответов в API на ASP.NET Core 11
Полное руководство по сжатию ответов в ASP.NET Core 11: AddResponseCompression и UseResponseCompression, новый встроенный провайдер Zstandard рядом с Brotli и Gzip, уровни сжатия, EnableForHttps и риск CRIME/BREACH, пользовательские MIME-типы, порядок middleware и когда стоит доверить это обратному прокси.
Как добавить кеширование выходных данных в minimal API на ASP.NET Core 11
Полное рабочее руководство по кешированию выходных данных в minimal API на ASP.NET Core 11: AddOutputCache и UseOutputCache, CacheOutput на конечных точках и MapGroup, именованные и базовые политики, Expire, VaryByQuery и VaryByHeader, вытеснение по тегам с EvictByTagAsync, защита от cache stampede, повторная валидация через ETag и хранилище на Redis.
.NET 11 Runtime Async отказывается от флага EnablePreviewFeatures
По мере того как предварительные версии .NET 11 приближаются к ноябрьскому выпуску, Runtime Async повзрослел: проекты net11.0 включают его одним свойством MSBuild, а сами библиотеки среды выполнения теперь компилируются с ним.
Что такое PGO в .NET и нужно ли его включать?
PGO (оптимизация на основе профиля) позволяет JIT-компилятору .NET специализировать горячий код под типы и ветви, которые действительно встречаются в вашей нагрузке. Dynamic PGO включён по умолчанию начиная с .NET 8, поэтому в .NET 8 и более поздних версиях включать его не нужно. Вот что он делает, как увидеть его эффект и те редкие случаи, когда стоит тронуть настройку.
Вперёд