22 pontos por xguru 2023-08-21 | 6 comentários | Compartilhar no WhatsApp
  • Um banco de dados relacional que também pode armazenar diretamente a lógica da aplicação
    • No formato de procedures armazenadas chamadas de 'Modules'
  • Sem servidor separado, o cliente se conecta diretamente ao DB e executa a lógica da aplicação dentro do banco
  • Otimizado para garantir 'máxima velocidade' e 'latência mínima', em vez de tarefas em lote ou OLAP
    • Alcança velocidade armazenando todo o estado da aplicação em memória
    • Os dados ficam em um WAL (Write-Ahead Log)
  • O backend real do MMORPG BitCraft Online está rodando como um único módulo do SpacetimeDB. Não há servidor separado
  • Funciona como uma biblioteca de banco de dados embarcado, podendo ser embutido na sua própria aplicação
    • Ou também pode ser executado diretamente de forma standalone (usando o CLI do spacetime)
  • Binário único em Rust com suporte de instalação em macOS/Linux/Windows
  • "Multiplayer na velocidade da luz"

6 comentários

 
regentag 2023-08-22

Seria algo como o PL/SQL da Oracle?

 
xguru 2023-08-23

O conceito é parecido, mas como o suporte a linguagens é mais amplo, parece ser mais versátil.

 
cosine20 2023-08-22

Oh, interessante.

 
kuroneko 2023-08-21

Parece que a ideia é oferecer suporte a outras linguagens no futuro também, e isso me parece uma ideia bem interessante.
A preocupação com desempenho deve diminuir ainda mais.

 
yoehwan 2023-08-21

Fui ao repositório do GitHub e parece que foi escrito em Rust, mas você poderia me dizer onde está a informação sobre "suporte à instalação em Mac/Linux/Windows com binário Go"?

 
xguru 2023-08-21

Opa, acho que me confundi com alguma coisa enquanto escrevia. Já corrigi.