- SpacetimeDB adalah sistem yang menggabungkan database dan fungsi server
- Alih-alih menempatkan web atau game server tradisional secara terpisah, klien dapat terhubung langsung ke database untuk menjalankan logika aplikasi
- Logika aplikasi dapat diunggah langsung ke database melalui stored procedure berbentuk "modul" yang ditulis dengan Rust
- Seluruh aplikasi dapat dideploy sebagai satu biner Rust, sehingga DevOps, container, server, dan microservice tidak diperlukan
Fitur utama
- Konsepnya mirip smart contract, tetapi tidak terkait dengan blockchain
- Jauh lebih cepat dibanding sistem smart contract yang ada
- Backend MMORPG BitCraft Online dibangun hanya dengan satu SpacetimeDB
- Semua elemen dalam game diproses secara real-time di database dan disinkronkan ke klien
- Dioptimalkan untuk aplikasi real-time dan dirancang dengan tujuan meminimalkan latensi
- Status aplikasi disimpan di memori, lalu dicatat ke WAL (Write-Ahead Log) untuk pemulihan
Cara instalasi
Instalasi macOS / Linux
Instalasi Windows
Menjalankan dengan Docker
- Jika menggunakan Docker
docker run --rm --pull always -p 3000:3000 clockworklabs/spacetime start
4 langkah untuk memulai
- Instal tool CLI
spacetime
- Jalankan satu node dengan perintah
spacetime start
- Tulis dan unggah modul dengan salah satu bahasa yang didukung
- Hubungkan ke database dengan library klien
Dukungan bahasa
Modul sisi server
Library klien
Informasi lisensi
- Mengikuti lisensi BSL 1.1
- Setelah jangka waktu tertentu, beralih ke AGPL v3.0 + link exception
- Tidak mewajibkan publikasi source code aplikasi yang terintegrasi dengan SpacetimeDB
- Pendekatan lisensi perangkat lunak bebas yang dirancang agar kontribusi kembali ke komunitas
Dokumentasi resmi
5 komentar
Idenya menarik. Saya penasaran bagaimana mereka menangani hal-hal seperti DDoS atau auth dengan baik.
Namanya benar-benar keren.
Saya sempat merasa ini benar-benar segar dan terlihat bagus, tapi ternyata dulu saya sudah memberi bintang di GitHub. Ingatan saya...
SpaceTimeDB - Menggabungkan DB dan server menjadi satu
Saya pernah memperkenalkannya sekitar satu setengah tahun lalu, dan tampaknya terus diperbarui dengan baik. a16z dan Supercell juga ikut berinvestasi.
Komentar Hacker News
SpacetimeDB termasuk dalam genre teknologi "rekonfigurasi cara berpikir secara kosmik". Ini memiliki potensi untuk meningkatkan performa secara besar melalui penataan ulang struktural
Komentar terbaik dari postingan sebelumnya:
SpacetimeDB dikembangkan untuk mendukung MMORPG skala besar bernama BitCraft
Sulit memahami bagaimana menulis server game dengan teknologi ini
BitCraft terlihat lucu
YouTube merekomendasikan SpacetimeDB, tetapi belum pernah membuat video game
Proyek ini dilindungi BSL, dengan batas waktu yang agak memberatkan
Jangan mencampuradukkan skema basis data relasional dengan cara aplikasi memproses data
Saya penasaran apakah menjalankan basis data secara lokal pada game single-player memang masuk akal
Ini tampak seperti basis data in-memory, dengan runtime WASM untuk meng-host logika domain