TasteGeo
資格驗證
正在進行發佈資格驗證

TasteGeo

GeoServer 相容性,
以 Rust 重構。

以 Rust 重構 GeoServer 相容性。

透過將既有 OGC 請求與營運行為和參考伺服器比較而實作的 Rust 原生地理空間伺服器。

GET /ows?service=WMS&request=GetMap
Compatibility-firstRust edition 2024GPL-2.0-or-later
02

協定 + 儲存

一個介面。
多項契約。

產生矩陣中的核心契約目前均為驗證中的部分支援。這是經過量測的相容性介面,而非完成宣告。

01

WMS

地圖、圖徵資訊與圖例

部分支援
02

WFS

圖徵查詢與交易

部分支援
03

WMTS

矩陣集與圖磚快取

部分支援
04

WCS

覆蓋子集與輸出

部分支援
05

REST

目錄與服務設定

部分支援
06

PostGIS

主要向量適配器

部分支援
07

GeoPackage

可攜式 SQLite 資料集

部分支援
08

Shapefile

受限向量匯入

部分支援
09

GeoTIFF

網格與覆蓋儲存

部分支援
10

COG

雲端最佳化網格目標

部分支援
03 / 相容性介面

適用於既有
GeoServer 用戶端。

我們透過保留協定與錯誤語意、目錄和營運流程來驗證相容性。這不是對任何產品完全相容的宣告。

WMS 請求SERVICE=WMS
REQUEST=GetMap
VERSION=1.3.0
正規化證據語意比較
參考 GeoServer WMTS fixture
WMS 使用端相容性目標
WFS 使用端相容性目標
WMTS 用戶端相容性目標
REST 自動化相容性目標
PostGIS 工作流程適配器驗證中
既有 data_dir唯讀分析路徑
OGC 工具語意比較目標
地圖渲染用戶端golden image 目標

TasteGeo 相容性理念

保留既有用戶端。替換底層執行環境。

用戶端維持不變,執行環境切換到 Rust。

04

工作區架構

邊界優先於
速度。

我們固定相依方向並驗證公開 HTTP 行為。任何儲存或框架都不能主導協定語意。

01 / 基礎

基礎

獨立於協定和儲存的值、解析器、座標系統與可觀測性邊界。

geometrycrsfilterogc-commonconfigobservability
02 / 領域

領域

目錄、安全性、樣式和版本化擴充契約集中在同一層。

catalogsecuritydatastore-apistyleplugin-api
03 / 適配器

適配器

隔離資料存取,使協定實作不直接依賴特定儲存。

store-postgisstore-geopackagestore-shapefilestore-geotiff
04 / 服務

服務

在渲染和快取層之上組裝 OGC 服務與管理 API。

rendertile-cachewmswfswmtswcsrest-api
05 / 組裝 + 驗證

組裝 + 驗證

伺服器組裝邊界;驗證工具只比較公開 HTTP 與 fixture。

servercompat-tests
05 / 就緒狀態

先有證據,
再作宣告。

TasteGeo 將本機程式碼品質閘門與外部發佈資格驗證分開。核心契約在驗證期間仍為部分支援。

目前狀態正在進行發佈資格驗證
查看驗證 fixture
01 / 05

相容性

將相同請求傳送到參考伺服器與候選實作,正規化後比較語意。

  • 正規化 XML 命名空間與屬性
  • 比較圖徵與幾何語意
  • 網格 golden image
  • OGC 例外一致性
06

擷取的輸出

讓差異
清楚可見。

我們驗證了每個 fixture 的 content type 與二進位簽章。參考擷取絕不會當作候選實作輸出展示。

參考 GeoServer 的 WMTS rain 圖磚 fixture
已驗證參考 fixtureWMTS 圖磚 fixture

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

呈現 TasteGeo 地理空間服務核心與地形圖層的品牌圖片
裝飾資源服務地形

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

參考 GeoServer 的 WMTS 網格 fixture
已驗證參考 fixture網格輸出 fixture

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

參考 GeoServer 的世界地圖 WMS GetMap fixture
已驗證參考 fixtureWMS 世界地圖 fixture

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

TASTEGEO 方法

相容性需要
證據證明, 而非口頭宣告。

TasteGeo 在宣告完成之前,先累積可重現的比較結果與營運證據。