На странице собраны вопросы по .NET — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: backend, database, memory management.
Как исключить повторную отправку отложенных писем при горизонтальном масштабировании? область: распределённые системы, messaging ключевая проблема: конкуренция при отправке между несколькими инстансами решение 1 —…
Как IQueryable<T> преобразует лямбда-выражения в SQL IQueryable<T> предназначен для формирования запросов к удалённому источнику данных, например к базе данных. В этом случае лямбда-выражения представлены как…
Как мониторить нагрузку на сервис для своевременного масштабирования? мониторинг CPU, памяти, сети и диска показывает базовый уровень нагрузки время отклика и throughput позволяют оценить производительность сервиса…
архитектурный подход к созданию распределённых систем приложение разделяется на самостоятельные сервисы каждый из них выполняет определённую бизнес-задачу сервисы обмениваются данными через строго определённые API…
Как распознать нарушение принципа единственной ответственности (SRP)? Крупные классы и модули, объединяющие несколько разных функций Методы и функции одновременно выполняют разноплановые задачи Изменение одной причины…
Возврат потока в пул при выполнении await Асинхронная модель C# использует state machine и Task На время await текущий поток освобождается до завершения задачи Метод формирует continuation, которое планируется для…
CI/CD автоматизирует сборку, тестирование и доставку приложения настроить Git и определить триггеры запуска pipeline подключить CI-сервер: Jenkins, GitLab CI или GitHub Actions запускать сборку и юнит-тесты…
В LINQ предусмотрены два варианта выполнения: отложенное (deferred) и немедленное. Операторы, результатом которых является IEnumerable, например Where и Select, применяют отложенное выполнение: запрос создаётся, но…
Как работают индексаторы (Indexers) в C#? определяют способ доступа к элементам объекта используют синтаксис, напоминающий массив: obj[index] позволяют обращаться с экземпляром класса как с коллекцией объявляются с…
Архитектура: асинхронная очередь задач Выделить отдельный сервис рассылки, обрабатываемый воркерами (workers) Помещать задания в распределённую очередь сообщений — RabbitMQ, Kafka или Redis Streams Передавать в каждой…
Отображение сообщения из фонового потока в Windows Forms UI-поток в Windows Forms является однопоточным, поэтому другой поток не может напрямую изменять его элементы Для передачи выполнения в UI-поток применяют…