Подготовка к интервью

Вопросы на собеседовании в 1inch

10 вопросов с собеседований в 1inch

10 вопросов 1632 компании 353 технологии

Что проверяют на интервью

Как устроена подборка

Подборка объединяет вопросы, отмеченные на этапах интервью в 1inch. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: redis, kafka.

Каталог

Результаты поиска

Найдено: 10
Теория

Как оптимизировать сетевой трафик к Redis с помощью pipelining, если необходимо отправить 10 000 команд?

Pipelining отправляет несколько команд без ожидания ответа на каждую, уменьшая число round trips и сетевых вызовов. Для 10 000 команд подберите ограниченные пакеты и обязательно прочитайте все ответы.

Читать ответ
Теория

Чем структура данных Redis Sorted Set (ZSET) отличается от обычного хеша и на базе какого алгоритма, например Skip List, она построена?

ZSET хранит уникальных участников с числовыми score и поддерживает порядок и диапазоны; Hash хранит пары полей и значений без такой сортировки. Внутреннее представление ZSET зависит от размера.

Читать ответ
Теория

Как запуск фонового процесса BGSAVE в Redis использует системный вызов fork() и оптимизацию Copy-on-Write?

BGSAVE создаёт дочерний процесс через fork: ребёнок записывает снимок, а родитель продолжает обслуживать клиентов. Copy-on-Write позволяет сначала разделять страницы памяти и копировать их при изменении.

Читать ответ
Теория

Каким образом атомарные Lua-скрипты в Redis помогают реализовывать сложную бизнес-логику, например rate limiter, без состояний гонки?

Lua-скрипт выполняет проверку и изменение данных без вклинивания других команд Redis. Поэтому счётчик, лимит и TTL можно согласованно обновить одним вызовом вместо гонки между GET и SET.

Читать ответ
Теория

Каковы риски использования команды KEYS * на работающем продакшене и какой безопасной альтернативой её заменяют?

KEYS * выполняет полный обход ключей одной командой и может надолго задержать другие операции Redis. Обычно используют курсорный SCAN с ограничением темпа и обработкой повторов.

Читать ответ
System Design

Как спроектировать распределённый замок (Distributed Lock / Redlock) с помощью Redis и учесть случай, когда воркер завис в паузе GC?

TTL-lock может истечь во время паузы GC, после чего старый worker продолжит работу одновременно с новым. Для защиты ресурса нужен fencing token или проверка версии, а не только продление TTL.

Читать ответ
Теория

Как работает механизм Client-Side Caching в Redis 6+ и как бэкенд узнаёт, что данные на сервере Redis изменились?

Redis tracking отслеживает прочитанные клиентом ключи и отправляет invalidation при их изменении. Клиент удаляет локальную копию и получает новое значение при следующем чтении.

Читать ответ
Теория

Как использовать Redis Streams для построения легковесного аналога Kafka и каковы ограничения такого подхода?

Redis Streams предоставляет журнал записей, consumer groups и подтверждения обработки. Это удобно для небольшого событийного контура, но не делает Redis полной заменой Kafka по хранению и масштабированию.

Читать ответ
Теория

Что такое Cache Avalanche (лавина кэша), когда у тысяч ключей одновременно истекает TTL, и как это предотвращается с помощью рандомизации (jitter)?

Cache avalanche — массовое истечение ключей или недоступность кеша, из-за чего нагрузка одновременно переходит в основную БД. Jitter разносит сроки истечения во времени.

Читать ответ
Теория

В чём разница между хешированием ключей в Redis Cluster (slots) и классическим хешированием по модулю hash(key) % N?

Redis Cluster сначала отображает ключ в один из 16 384 hash slots, а затем slot — в узел. При hash(key) % N изменение числа узлов обычно перераспределяет почти все ключи.

Читать ответ