Механизмы асинхронного программирования в Java базовый механизм: Thread — выполняет код параллельно, но требует ручного контроля жизненного цикла Future — представляет результат асинхронной операции, однако вызов…
использовал архитектуру микросервисов для разделения бизнес-функций на модули выделял сервисы аутентификации, управления заказами, оплаты и уведомлений для синхронных запросов применял REST API или gRPC для гибкой и…
область: распределённые системы, messaging основные модели: At-most-once, At-least-once, Exactly-once At-most-once: сообщение доставляется 0 или 1 раз; возможна потеря, но дубликаты не возникают At-least-once:…
Недостатки микросервисной архитектуры разработка и сопровождение становятся сложнее: каждым сервисом необходимо управлять отдельно распределённую отладку и мониторинг усложняет большое количество взаимодействующих…
Недостатки пагинации через LIMIT OFFSET при больших offset производительность снижается, поскольку приходится просматривать множество строк при изменении данных смещение становится нестабильным: добавленные и…
Основные недостатки и подводные камни float тип данных с ограниченной точностью (машинное представление) представляет числа в формате IEEE 754 (с плавающей запятой) Ограниченная точность может привести к ошибкам…
Основные проблемы финализатора (деструктора) момент вызова непредсказуем, поскольку его определяет GC длительное выполнение финализатора способно задержать сборку мусора при работе с другими ресурсами возможны дедлоки…
Какие области памяти есть кроме стека и кучи Data (Data Segment) — сегмент для глобальных и статических переменных, который создаётся во время загрузки программы BSS (Block Started by Symbol) — часть Data Segment,…
Какие операции и функции безопасны для nil-среза в Go? Context: Go, срезы (slice) nil-срез — срез со значением nil и нулевой длиной Методы (функции) для срезов — как правило, это функции пакета sort, append и операции…
управление схемой базы данных: создание, изменение и удаление таблиц добавление, редактирование и удаление столбцов создание и удаление индексов и ограничений (PK, FK, уникальные) задание типов данных и их параметров…
Слайс в Go представляет собой динамический изменяемый участок массива. Создавать слайсы можно с помощью литералов, функции make или выделения части другого слайса. Читать и изменять элементы разрешается по индексу;…