SpacetimeDB 引發資料庫許可和遊戲開發應用的爭論

BigGo Editorial Team
SpacetimeDB 引發資料庫許可和遊戲開發應用的爭論

遊戲和資料庫開發社群正在討論 SpacetimeDB,這是一個為多人應用設計的資料庫和伺服器組合系統。雖然其技術能力引起了興趣,但社群成員對其許可模式和遊戲開發的實際應用提出了質疑。

SpacetimeDB 主要特點

  • 結合資料庫和伺服器系統
  • 關係型資料庫,帶有"模組"(高階儲存過程)
  • 客戶端直接連線資料庫
  • 支援多種程式語言

語言支援 伺服器端庫:

  • Rust
  • C

客戶端庫:

  • Rust
  • C
  • TypeScript

許可證資訊

  • 當前:BSL 1.1(非開源)
  • 轉換為:AGPL v3.0,帶有自定義連結例外
展示 SpacetimeDB 協作開發的 GitHub 倉庫頁面
展示 SpacetimeDB 協作開發的 GitHub 倉庫頁面

許可問題浮出水面

SpacetimeDB 使用商業原始碼許可證(BSL)1.1,該許可證後來會轉換為帶有自定義連結例外的 AGPL v3.0。這種許可選擇在潛在使用者中引發了爭論。一位社群成員簡潔地指出該專案並非開源,這對偏好完全開源解決方案的開發者來說可能是一個採用障礙。建立者解釋他們的動機是確保對 SpacetimeDB 的貢獻能與社群共享,同時不強制使用者在與 SpacetimeDB 連結時開源自己的程式碼。

遊戲應用缺少關鍵功能

儘管 SpacetimeDB 的營銷重點是多人遊戲開發,但一些使用者注意到其功能集存在顯著缺口。該資料庫缺乏內建的運動預測和多版本功能,這些本應是面向遊戲的資料庫解決方案所具備的。

「我一直在閱讀,期待看到運動預測、多版本或類似功能,考慮到其名稱和對遊戲的關注,但沒有。這是一個完全普通的資料庫,設計用於低延遲並支援 WASM 儲存過程。」

這一觀察表明,雖然 SpacetimeDB 為持久的多人世界提供了基礎,但開發者仍需實現自己的延遲掩蔽網路程式碼和其他遊戲特定最佳化。

可擴充套件性問題仍未解答

社群成員對 SpacetimeDB 的可擴充套件效能力提出了擔憂,而這些問題在現有文件中基本未得到解答。當一位使用者直接詢問如何擴充套件這個系統?時,另一位使用者回應說擴充套件似乎主要是垂直的,並指出沒有任何關於擴充套件測試或多伺服器支援的提及。對於尋求構建可能需要在多個伺服器上水平擴充套件的應用的開發者來說,這一限制可能是重大的。

營銷語言引發批評

該專案的宣傳語言也招致了技術社群的批評。一條評論特別指出 README 中聲稱 SpacetimeDB 消除了對微服務、容器、Kubernetes、Docker、虛擬機器、DevOps、基礎設施、運維和伺服器的需求,這是過度的營銷誇張。這種反應凸顯了技術社群對於適度宣告和能力的現實評估的偏好。

儘管有這些批評,SpacetimeDB 仍然引起了積極的興趣。它透過 WASM 儲存過程(稱為模組)將資料庫功能與伺服器端處理相結合的創新方法代表了一個有趣的技術方向。一位使用者表達了熱情,指出該專案解決了我腦海中長期存在的一個疑問,表明 SpacetimeDB 的核心理念與尋求簡化多人後端解決方案的開發者產生了共鳴。

隨著 SpacetimeDB 的繼續發展,其技術能力、許可模式和營銷方法之間的平衡可能會決定其在遊戲開發者和其他尋求簡化即時應用資料庫解決方案的潛在使用者中的採用率。

參考:SpacetimeDB