Tasklets
Язык буткемпа: Go
Технологии: YDB
Tasklets — это сервис, предоставляющий простой интерфейс для запуска приложений в облаке. Он позволяет запустить исполняемый файл, который выполняет контракт в виде сериализованного входного и выходного сообщения.
Тасклеты являются как бы базовым строительным элементом для CI/CD-flow в Яндексе.
Сервис делегирует непосредственное исполнение в один из нижележащих рантаймов: Sandbox/YP/и тут мы планируем расширить поддержку.
Стек
Go | Основной язык программирования |
---|---|
YDB | Основные фреймворки |
GRPC | Базы данных |
**Sandbox / YP / YT** | Рантайм, где исполняются Тасклеты |
Команда
Наша команда распределённая: по одному человеку в Москве и Ереване + два в Белграде.
Особенности
- У нас амбициозные цели — написать удобный рантайм для CI, который бы умел запускать как супер-быстрые код-сниппеты, так и сложные задачи, требующие кастомных настроек окружения.
- Мы делаем молодой продукт с хорошим покрытием тестами, с малым количеством legacy, на современном технологическом стеке.
Что нужно принять во внимание
Есть SRE-дежурства: иногда требуется реагировать на уведомления, разбираться с первопричиной проблемы и устранять её либо тюнить сами уведомления. Мы сами отвечаем за стабильность сервиса и сами настраиваем алерты, которые считаем необходимыми, и пороги, которые нам кажутся разумными.
Вызовы
Наши ключевые задачи на ближайшее время:
- разработать интеграцию с рантаймом, который будет обеспечивать быстрый (пара секунд) запуск простейших тасклетов, не требующих особой настройки;
- поддержать изолированные сети для запуска тасклетов, чтобы улучшить безопасность;
- разработать интеграцию с рантаймом, который позволит утилизировать железо лучше, чем это делает нынешний рантайм — Sandbox.