Каковы причины OutOfMemoryError и как найти утечку памяти?
OutOfMemoryError возникает, когда JVM не может выделить достаточно памяти для объекта, обычно из-за исчерпания кучи (heap). Основные причины:
Читать ответПодготовка к интервью
3834 вопроса с собеседований в Сбер
Что проверяют на интервью
Подборка объединяет вопросы, отмеченные на этапах интервью в Сбер. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: database, sql, backend.
Каталог
OutOfMemoryError возникает, когда JVM не может выделить достаточно памяти для объекта, обычно из-за исчерпания кучи (heap). Основные причины:
Читать ответKafka — это распределённая система обмена сообщениями, основанная на концепции очередей и публикации-подписки.
Читать ответСинтетический ключ — это искусственно созданный уникальный идентификатор записи в базе данных, который не несет бизнес-смысла (например, автоинкрементный числовой ID или UUID).
Читать ответСтатические функции в Java принадлежат классу, а не конкретному объекту. Они вызываются через имя класса, а не через экземпляр.
Читать ответJVM использует несколько областей памяти для хранения данных, каждая из которых имеет своё назначение:
Читать ответВ Java Stream API метод collect(Collectors.toList()) — это стандартный способ собрать элементы потока в список (List). Он возвращает новый список, содержащий все элементы потока.
Читать ответНереляционные базы данных (NoSQL) имеют несколько преимуществ по сравнению с реляционными:
Читать ответВ Hibernate для генерации идентификаторов сущностей можно настраивать различные стратегии через аннотацию @GeneratedValue с параметром strategy. Основные стратегии:
Читать ответВ PostgreSQL уровни изоляции транзакций определяют, как видны изменения данных разным транзакциям и какие аномалии возможны.
Читать ответДа, я работал с многопоточностью в Java, используя классы из пакета java.util.concurrent, такие как ExecutorService для управления пулом потоков.
Читать ответВ PostgreSQL удалённые строки не удаляются физически сразу после операции DELETE или обновления (UPDATE). Вместо этого они становятся «мертвыми» (dead tuples) и остаются в таблице до выполнения операции VACUUM.
Читать ответДа, в базах данных иногда используются составные (мульти) натуральные ключи, которые состоят из нескольких полей, отражающих уникальные бизнес-атрибуты.
Читать ответ