Golang задачи с собеседований
4.58K subscribers
489 photos
6 videos
12 files
256 links
Задачи, тесты и теоретические вопросы по Go. Так же по gin, grpc, горутинах, архитектуре api и http стэку.

Прислать задачу/вопрос в дар: @cyberJohnny
Сотрудничество: @cyberJohnny
加入频道
Что будет, если программа получает сигнал о завершении, а в ней используется time.Sleep()

👻 — Все горутины сразу прекращают выполнение.
🌚 — Сигнал вообще не обрабатывается.
⚡️ — Горутина «проснётся» и начнёт завершение работы.
🎉 — Происходит паника.

🐸 Библиотека задач по Go
Каков результат выполнения кода?

👻 — [1, 2, 3]
🌚 — [0, 0, 0]
⚡️ — Ничего
🎉 — nil

🐸 Библиотека задач по Go
Что обозначает идемпотентность в случае REST API?

— Это ситуация, когда повторные запросы изменяют состояние системы.
— Это когда запросы могут выполняться несколько раз и давать одинаковый результат.
— Это когда все запросы требуют аутентификации.
— Это когда запросы возвращают ошибку при повторении.

Библиотека задач по Go.
Что обозначает буква «A» в термине ACID?

👻 — Атомарность: это гарантирует, что транзакция будет завершена либо полностью, либо вообще не будет выполнена.
🌚 — Абстракция: это обеспечивает возможность абстрагирования данных для различных типов пользователей.
⚡️ — Аутентификация: это обеспечивает проверку прав доступа пользователя к данным.
🎉 — Автономность: это гарантирует независимость операций в различных системах.

🐸 Библиотека задач по Go
Какой будет результат выполнения кода

👻 — 5, 10
🌚 — 10, 10
⚡️ — 5, 5
🎉 — 10, 5

🐸Библиотека задач по Go
Что означает буква «C» в термине ACID

👻 — Контроль: обеспечивает возможность отслеживания и управления всеми изменениями в базе данных.
🌚 — Конфиденциальность: защищает данные от несанкционированного доступа.
⚡️ — Согласованность: гарантирует, что транзакция переводит базу данных из одного согласованного состояния в другое, соблюдая все ограничения и правила.
🎉 — Конкурентоспособность: позволяет выполнять несколько транзакций одновременно без конфликтов.

🐸 Библиотека задач по Go
Какой код состояния HTTP нужно вернуть при успешном создании ресурса в REST API?

Библиотека задач по Go
Какое значение имеет буква «I» в акрониме ACID

👻 — Интерпретируемость: позволяет транзакциям быть легко читаемыми и понятными для системы.
🌚 — Иммутабельность: гарантирует, что записанные данные нельзя изменить или удалить.
⚡️ — Изолированность: обеспечивает независимость выполнения транзакций, будто каждая из них выполняется отдельно.
🎉 — Инициативность: позволяет базе данных предсказывать и оптимизировать будущие запросы.

🐸Библиотека задач по Go
Каковы последствия, если не вызвать cancel() у контекста?

👻 — Ничего страшного, Go сам всё очистит
🌚 — Произойдёт panic
⚡️ — Возможна утечка памяти и/или зависшая горутина
🎉 — Контекст завершится по истечении времени

🐸 Библиотека задач по Go
Каково значение принципа «D» в ACID?

👻 — Обеспечивает отмену всех изменений, сделанных транзакцией, в случае сбоя системы.
🌚 — Обеспечивает сохранение данных в долговременной памяти после успешной транзакции.
⚡️ — Обеспечивает выполнение транзакций в порядке их поступления.
🎉 — Обеспечивает завершение транзакции либо успешно, либо с ошибкой.

🐸Библиотека задач по Go
📦 Основные проблемы распределенных систем (и способы их решения)

Распределенные системы являются основой высоконагруженных веб-приложений, обеспечивая их масштабируемость, отказоустойчивость и высокую производительность. Однако их разработка связана с рядом сложностей, включая сетевые сбои, трудности координации, угрозы безопасности и проблемы масштабирования.

➡️ В этой статье мы рассмотрим четыре ключевых вызова в разработке таких систем и эффективные методы их преодоления.

🐸 Библиотека программиста
Какой результат даст этот код?

👻 — 24
🌚 — 24.7
⚡️ — 0
🎉 — Ошибка времени выполнения

🐸 Библиотека задач по Go
Что такое SLI?

👻 — Это показатель, который оценивает качество услуги, например, время отклика или доступность сервиса.
🌚 — Он помогает компаниям следить за тем, насколько их сервисы соответствуют ожиданиям пользователей.
⚡️ — Этот показатель используется для мониторинга и повышения производительности и надежности сервисов.
🎉 — Это метрика, способствующая достижению целей, установленных в рамках SLO и SLA.

🐸 Библиотека задач по Go