
SpacetimeDB — это in‑memory реляционная БД для realtime-игр, которая в то же время является backend‑сервером, а логика выполняется непосредственно с данными в БД.
Для "скриптинга" поддерживается много языков: от Rust до C#.
Проект изначально разрабатывался студией Clockwork Labs специально для их собственной MMO — BitCraft. Но позже они выкатили это на Github и теперь постепенно всё больше уходят в сторону полноценного Backend-as-a-Service.
Собственно сама идея этой платформы — это экстремально низкая задержка, что как раз очень важно для realtime-игр. Чем и продиктованы основные архитектурные решения.
Предоставляются Maincloud тарифы, в их управляемом облаке. Просто выбираешь тариф, оплачиваешь и используешь.
Есть и self-hosted вариант, он всё ещё описан в документации, но у меня по нему всё больше опасений.
В своём крутом промо-ролике с чумовым окончанием, разработчики анонсировали много изменений.
В частности:
Более щедрый Free Tier,
Переработка архитектуры,
Обновлённый протокол,
Новый мониторинг,
Поддержка UE,
Расширение поддержки для realtime-веб-приложений (теперь не только про игры),
Шаблоны с правилами для AI-агентов и в целом удобную AI-native архитектуру.
Стоит понимать, что пока нет серьёзных крупных проектов на этой технологии, кроме самого BitCraft.
Заточено оно именно под realtime.
Из-за того, что это In-Memory БД, на больших объёмах данных потребуется много RAM. А она нам дорога как память.
Также это мощный vender-lock: у них и протокол свой, и весь их бэкенд — это одно незаменяемое немодульное ядро.
Поэтому технология любопытная, привлекательная, но может оказаться рискованной, особенно для крупных долгоживущих проектов. С другой стороны, как мы знаем, кто не рискует — тот не рискует 🤡
