Есть достаточно простая задача: нужно запустить произвольный код от пользователя в изолированном окружении. В случае нашего сервиса, Яндекс Практикума, мы это называем "тренажёрами".
Первый свой тренажёр мы запустили ещё в 2019 году. И с тех пор много чего поменялось; какие-то наши решения не устраивали нас ввиду высокого latency, а какие-то, хоть и были очень шустрыми, очень болели под нагрузкой. В докладе постараюсь подвести черту под всеми нашими наработками и поделиться как хорошим, так и плохим опытом: как мы запускались вначале, почему отказывались от тех или иных решений и почему сейчас нам очень нравится делать тренажёры на основе serverless containers.