01TasteGeo
GeoServer 相容性,
以 Rust 重構。
以 Rust 重構 GeoServer 相容性。
透過將既有 OGC 請求與營運行為和參考伺服器比較而實作的 Rust 原生地理空間伺服器。
01為可控替換而打造的相容伺服器。
TasteGeo 重建公開行為,並明確分離 runtime、儲存與驗證邊界。
行為優先的 OGC
在公開 HTTP 邊界比較 WMS、WFS、WMTS、WCS 與 REST 契約。
請求、回應、錯誤Rust-native runtime
以記憶體安全的原生 runtime 實現不依賴 JVM 的可預測部署。
Rust 2024, Axum, Tokio隔離的資料適配器
協定程式碼不直接綁定具體資料實作。
版本化 capability 邊界證據驅動的遷移
採用唯讀分析、語意差異、shadow traffic 與 rollback gate。
切換前先比較跨平台
面向 Linux、Windows 與 macOS 提供一致的設定契約和維運流程。
統一伺服器模型十種語言
產品、驗證、文件與社群路徑均支援十種語言。
在地化 UI 與 metadata協定 + 儲存
一個介面。
多項契約。
產生矩陣中的核心契約目前均為驗證中的部分支援。這是經過量測的相容性介面,而非完成宣告。
WMS
地圖、圖徵資訊與圖例
WFS
圖徵查詢與交易
WMTS
矩陣集與圖磚快取
WCS
覆蓋子集與輸出
REST
目錄與服務設定
PostGIS
主要向量適配器
GeoPackage
可攜式 SQLite 資料集
Shapefile
受限向量匯入
GeoTIFF
網格與覆蓋儲存
COG
雲端最佳化網格目標
適用於既有
GeoServer 用戶端。
我們透過保留協定與錯誤語意、目錄和營運流程來驗證相容性。這不是對任何產品完全相容的宣告。
SERVICE=WMS
REQUEST=GetMap
VERSION=1.3.0
保留 GeoServer 契約,審慎更換 runtime。
GeoServer 是擁有廣泛 Java 生態的成熟基準。TasteGeo 是仍在資格驗證中的獨立 Rust 實作。
| 評估項目 | GeoServer | TasteGeo Server |
|---|---|---|
| Runtime | Java 17 或 21,應用或 servlet container | 原生 Rust 伺服器,release qualification 進行中 |
| 語言安全模型 | Java 受管記憶體與 JVM garbage collection | Rust ownership 與 borrow checking,預設路徑無 GC |
| 維運資源模型 | 成熟的 JVM、heap、GC 與容器調校經驗 | 原生執行檔與明確記憶體生命週期,工作負載驗證中 |
| 相容性 | 成熟的 OGC 與維運行為 | 與基準伺服器比較相同請求的語意 |
| 擴充 | 大型 core、extension 與 community 生態 | 版本化 plugin 邊界,目前範圍有限 |
| 資料儲存 | 廣泛成熟的 vector 與 raster 整合 | 依優先順序逐步驗證適配器 |
| 遷移 | 現有設定與 data_dir | 唯讀診斷、獨立轉換、shadow traffic、rollback |
| 授權 | GPL version 2 or later | GPL-2.0-or-later,獨立開發 |
GeoServer 基準文件Runtime Extensions License
TasteGeo 相容性理念
用戶端維持不變,執行環境切換到 Rust。
工作區架構
邊界優先於
速度。
我們固定相依方向並驗證公開 HTTP 行為。任何儲存或框架都不能主導協定語意。
基礎
獨立於協定和儲存的值、解析器、座標系統與可觀測性邊界。
geometrycrsfilterogc-commonconfigobservability領域
目錄、安全性、樣式和版本化擴充契約集中在同一層。
catalogsecuritydatastore-apistyleplugin-api適配器
隔離資料存取,使協定實作不直接依賴特定儲存。
store-postgisstore-geopackagestore-shapefilestore-geotiff服務
在渲染和快取層之上組裝 OGC 服務與管理 API。
rendertile-cachewmswfswmtswcsrest-api組裝 + 驗證
伺服器組裝邊界;驗證工具只比較公開 HTTP 與 fixture。
servercompat-tests效能資料需要可重現的條件。
僅在相同硬體、資料集、負載、warm-up 與正確性 gate 下公布結果。
各 OGC 工作負載的回應延遲
可持續的每秒請求數
首個回應位元組到達時間
相同負載下的處理器成本
常駐記憶體及增長
資料庫連線池壓力
估算值或本機測量不會作為公開效能結論。
相容性
將相同請求傳送到參考伺服器與候選實作,正規化後比較語意。
- 正規化 XML 命名空間與屬性
- 比較圖徵與幾何語意
- 網格 golden image
- OGC 例外一致性
擷取的輸出
讓差異
清楚可見。
我們驗證了每個 fixture 的 content type 與二進位簽章。參考擷取絕不會當作候選實作輸出展示。

參考擷取 / image/png / 256 x 256

原創品牌藝術圖 / 非測試證據

參考擷取 / image/png / 256 x 256

參考擷取 / image/png / 64 x 32




