Подборка помогает системно подготовиться к интервью на позицию Backend-разработчик: проверить теорию, потренировать практические задачи и объяснение решений. В подборке чаще встречаются темы: backend, database, api.
Архитектура: Kafka представляет собой распределённый журнал сообщений (log), а RabbitMQ — брокер очередей Модель доставки: Kafka передаёт поток данных и долго хранит сообщения; RabbitMQ использует push-модель и…
Ключевые различия SQL и NoSQL SQL представляет собой язык запросов для реляционных БД, где данные организованы в таблицы с заранее заданной схемой NoSQL — это базы данных с нефиксированной схемой, поддерживающие…
Как отличаются SignalR, SSE и gRPC? SignalR — библиотека .NET для обмена данными в реальном времени по двунаправленному каналу (WebSocket/дополнительно) SSE передаёт односторонние события от сервера в браузер через…
Чем отличаются Spring и Spring Boot? Spring — фреймворк для Java-приложений с абстракциями DI, AOP, MVC и других возможностей Spring Boot — надстройка над Spring, упрощающая конфигурацию и запуск проекта В Spring…
Различия между producer и consumer в RabbitMQ RabbitMQ — брокер сообщений (message broker), работающий с очередями Producer — компонент, который отправляет, то есть публикует, сообщения в очередь Consumer — компонент,…
Чем горутины отличаются от потоков ОС и как работает планировщик Go? горутина — легковесный поток, которым управляет runtime Go, а не операционная система создание и завершение горутин требуют минимальных ресурсов:…
Разница между интерфейсом и абстрактным классом ООП, абстракция и наследование Интерфейс содержит только объявления методов: методов с телом нет, а все методы по умолчанию являются публичными и абстрактными…
Откат транзакций в Postgres и MS SQL: версионность или физические операции? В PostgreSQL ROLLBACK основан на механизме MVCC (многоверсионной конкуренции) MVCC сохраняет предыдущие версии строк, чтобы обеспечить чтение…
Передача null и пустой строки для необязательного поля Тип данных: null обозначает отсутствие значения, а "" является строкой без символов Смысл: null показывает, что поле не задано или отсутствует, а "" — что поле…
Синхронность и асинхронность: различия и области применения область: параллелизм, выполнение кода синхронность — операции выполняются последовательно, а поток блокируется до их завершения асинхронность — операции…
Ключевые различия Dispose и Finalize в C# Dispose — метод интерфейса IDisposable, предназначенный для явного освобождения неуправляемых ресурсов. Его можно вызвать вручную либо использовать конструкцию using, чтобы…