Назад к вопросам
Middle+
6
IMemoryCache Какие плюсы и минусы использования IMemoryCache в приложении? OWASP top 10, что это такое? Метрики кода 1. Какие метрики качества кода знаете? 2. Использовали? 3. Как считали? 4. Часть CI или adhoc Нагрузка Что будете делать если ваш сервис (веб страница) зависает на тестовом или нагруженном контуре, а локально все работает?
Компании, где спрашивали
Gravilink
Ответ от нейросети
sobes.tech AI
IMemoryCache — плюсы и минусы:
Плюсы:
- Быстрый доступ к данным в памяти без сетевых задержек.
- Простота использования и интеграции.
- Подходит для кэширования часто запрашиваемых данных.
Минусы:
- Ограничен объемом памяти сервера.
- Кэш не распределенный, не подходит для масштабируемых приложений с несколькими инстансами без дополнительной синхронизации.
- Данные теряются при перезапуске приложения.
OWASP Top 10 — это список из 10 наиболее критичных рисков безопасности веб-приложений, составляемый Open Web Application Security Project. Он помогает разработчикам и компаниям фокусироваться на основных уязвимостях, таких как SQL-инъекции, XSS, неправильная аутентификация и др.
Метрики качества кода:
-
Известные метрики:
- Покрытие тестами (code coverage)
- Сложность кода (Cyclomatic Complexity)
- Количество багов на 1000 строк кода
- Дублирование кода
- Статический анализ (lint)
-
Использовал — да, например, покрытие тестами и сложность кода.
-
Считали с помощью инструментов: для C# — SonarQube, Coverlet, Visual Studio Code Metrics.
-
Обычно метрики интегрированы в CI/CD пайплайн, чтобы автоматически контролировать качество при каждом коммите.
Если сервис зависает на тестовом или нагруженном контуре, а локально работает:
- Проверить логи и метрики на тестовом окружении для выявления узких мест.
- Проанализировать различия в конфигурации, версиях ПО, нагрузке.
- Использовать профилирование и трассировку для выявления блокировок или долгих операций.
- Оптимизировать код или инфраструктуру (например, увеличить ресурсы, добавить кэширование).
- Провести нагрузочное тестирование локально с приближенной к боевой нагрузкой.
- Рассмотреть масштабирование сервиса или использование очередей для асинхронной обработки.