MapSystem
Açık kaynak coğrafi veri sunucusu

Haritalarınız, kendi sunucunuzda.

MapSystem; PostGIS, Oracle, SQL Server, GeoPackage ya da GeoTIFF'teki verinizi WMS, WMTS, WFS, WCS ve OGC API servisleri olarak yayınlar. Kurum ağınızda çalışır, verinizi dışarı çıkarmaz.

Açık kaynak, GNU GPL v3 OGC test paketlerinde 872 test, 0 hata Türkçe ve İngilizce arayüz Linux üzerinde tek paket kurulum
Türkiye'nin gölgeli rölyef haritası; göller ve baraj gölleri mavi. MapSystem WMS çıktısı.
27° D 30° D 33° D 36° D 39° D 42° D 45° D 36° K 39° K 42° K 39° K
Bu sayfadaki haritaların hepsi MapSystem'in kendi WMS çıktısıdır. GetMap · altlik:acik, turkiye:rolyef, turkiye:goller · EPSG:3857
Örnek çalışma alanı: Türkiye

Katman katman Türkiye

81 il, 973 ilçe, ana karayolu ve demiryolu ağı, akarsular, göller ve 90 metrelik yükseklik modelinden üretilmiş rölyef. Hepsi aynı sunucudan, aynı stil motoruyla çiziliyor.

Türkiye turkiye

Açık standartlar

Bir katmanı yayınlayın, her istemci okusun

QGIS, ArcGIS, MapLibre, OpenLayers ya da kendi uygulamanız: her biri kendi protokolünden bağlanır. Katman bir kez tanımlanır, bütün servislerde aynı adla ve aynı stille görünür.

WMS

1.3.0

Sunucuda çizilmiş harita görüntüsü. SLD ile anlık stil, CQL filtresi, zaman ve yükseklik boyutları, GetFeatureInfo.

/turkiye/wms?REQUEST=GetMap&LAYERS=iller&CRS=EPSG:5254

WMTS

1.0.0

Önbellekli karo servisi. Meta-tile ile dikişsiz çizim; WebMercatorQuad dışında TUREF ve UTM gibi herhangi bir EPSG ızgarası.

/turkiye/wmts?REQUEST=GetCapabilities

WFS ve WFS-T

2.0.0

Öznitelik ve geometri sorgusu; GeoJSON, GML 3.2, CSV ve KML çıktısı. Yetkili kullanıcılar Insert, Update ve Delete yapabilir.

/turkiye/wfs?REQUEST=GetFeature&TYPENAMES=ilceler&COUNT=50

WCS

2.0.1

Raster veriyi ham değerleriyle GeoTIFF olarak verir. Alan kesme, ölçekleme ve farklı koordinat sisteminde çıktı.

/turkiye/wcs?REQUEST=GetCoverage&COVERAGEID=turkiye__yukseklik

OGC API

Features · Tiles · Maps · Styles · Records

JSON tabanlı modern API ailesi. OpenAPI 3.0 tanımı, sayfalama, bbox filtresi ve MVT vektör karolar.

/turkiye/ogc/collections/iller/items?limit=100

Süreçler

WPS 2.0.0 · OGC API Processes

Tampon, kesişim, birleşim, fark, dışbükey örtü, alan, uzunluk, yeniden projeksiyon ve diğerleri: 15 hazır coğrafi işlem.

/ogc/processes/buffer/execution

CSW ve INSPIRE

CSW 2.0.2

Katman metadata kataloğu, ISO 19139 çıktısı ve INSPIRE genişletilmiş yetenek belgeleri. 34 INSPIRE teması için varsayılan stiller.

/turkiye/csw?REQUEST=GetRecords

PMTiles

dışa aktarma

Vektör katmanı tek dosyalık bir karo arşivine yazın; statik bir web sunucusundan ya da çevrimdışı cihazlardan sunun.

POST /api/tilecache/pmtiles
OGC uyumluluk testleri

Standart dediğimiz şey, testten geçmiş olan

OGC'nin resmi test motoru TEAM Engine ile beş test paketini MapSystem 1.0 üzerinde çalıştırdık. Hata veren test yok.

Testler kendi test ortamımızda koşturulmuştur; bu sonuçlar resmi bir OGC sertifikası yerine geçmez.

Test paketiBaşarılıHatalıSonuç
WFS 2.03190Geçti
OGC API Features2520Geçti
WMS 1.3.02470Geçti
WMTS 1.0400Geçti
OGC API Tiles140Geçti
Performans

Aynı makinede, aynı veriyle ölçtük

Yaklaşık 3 milyon noktalık aynı PostGIS tablosu, aynı karo listesi ve aynı yük. Karşılaştırdığımız sunucu, yaygın kullanılan Java tabanlı açık kaynak bir OGC harita sunucusu. Onu üç sürümüyle ölçtük: eski kararlı sürüm, güncel kararlı sürüm ve bir sonraki ana sürümün önizlemesi.

Saniyede karşılanan karo isteği, güncel kararlı sürüme karşı MapSystem Referans sunucu
Yoğun nokta verisi, z7, önbelleksiz
66,8
3,1
22×
Stres: z6–z8 tüm karolar, önbelleksiz
96,0
7,3
13×
Orta zoom, z10, önbelleksiz
320
130
2,5×
Önbellekten karo servisi
6.740
2.662
2,5×

Çubuklar her satırda MapSystem'e göre ölçeklidir; sağdaki sayı kaç kat hızlı olduğunu gösterir. Raster karolar, 8 eşzamanlı istemci (önbellekten servis: 32).

Tüm sonuçlar: üç sürüm, gecikme ve hata oranı
SenaryoMapSystemEski kararlıGüncel kararlıSonraki sürüm (önizleme)
Önbellekten karo servisi6.740
p95 8 ms
2.920
p95 18 ms
2.662
p95 22 ms
3.224
p95 18 ms
Yoğun nokta verisi, z7, önbelleksiz66,8
p95 361 ms
1,1
p95 17.069 ms · hata %12,5
3,1
p95 5.381 ms · hata %12,5
3,0
p95 5.564 ms · hata %12,5
Stres: z6–z8 tüm karolar, önbelleksiz96,0
p95 394 ms
2,7
p95 28.556 ms · hata %9,5
7,3
p95 9.386 ms · hata %9,5
6,9
p95 10.045 ms · hata %9,5
Orta zoom, z10, önbelleksiz320
p95 104 ms
54,6
p95 556 ms · hata %1,8
130
p95 213 ms · hata %1,8
130
p95 225 ms · hata %1,8
Vektör karo (MVT), z7, önbelleksiz *74,7
p95 209 ms
2,5
p95 5.193 ms · hata %12,5
3,2
p95 3.981 ms
3,6
p95 3.673 ms
Vektör karo (MVT), z10, önbelleksiz *862
p95 33 ms
122
p95 100 ms · hata %1,8
138
p95 76 ms
124
p95 96 ms

Değerler saniyede karşılanan istek sayısıdır (yüksek olan iyi); altında 95. yüzdelik gecikme ve varsa hata oranı. * Vektör karo satırlarında referans sunucunun MVT karo önbelleği yalnızca eski kararlı sürümde açılabildi; diğer iki sürüm aynı alan için anlık çizimle (WMS GetMap) ölçüldü.

Farkın kaynağı. Düşük zoom'daki büyük fark, MapSystem'in yoğun nokta katmanları için önceden kurduğu seyreltilmiş özet piramidinden (overview) geliyor. Referans sunucuda bunun vektör karşılığı yok; her istekte veriyi baştan tarıyor. Bu bir tasarım farkı ve sonuçları okurken hesaba katılmalı. z11 ve üstü her iki tarafta da doğrudan kaynaktan okunur.

Koşullar. Ölçümler Haziran 2026'da, MapSystem'in 1.0 öncesi bir sürümüyle, iki sunucunun da aynı iş istasyonunda Docker üzerinde çalıştığı ortamda alındı. Önbelleksiz her senaryodan önce iki sunucu da temiz önbellekle yeniden başlatıldı. Yük aracı k6. Sonuçlar tek koşudur; önbelleksiz ölçümler turdan tura değişebilir, yön ve büyüklük tutarlıdır.

Kendiniz deneyin. Kıyas kiti (Docker Compose, k6 betikleri, örnek veri) kaynak kod deposunda tools/bench klasöründe. Karşılaştırmak istediğiniz sunucuyu kendi ayarınızla tanımlayıp aynı testi kendi donanımınızda koşabilirsiniz.

Yönetim arayüzü

Komut satırına inmeden yönetin

Veri kaynağını bağlayın, katmanı yayınlayın, stilini görsel olarak tasarlayın. Önbellek, küme ve kullanıcı yönetimi de aynı arayüzde.

MapSystem harita ekranı telefon görünümünde; Türkiye illeri bölgelere göre renklendirilmiş.

Arayüz telefonda da çalışır.

Kurum içinde

Verinin bulunduğu yerde çalışır

MapSystem veritabanınıza bağlanır, veriyi kopyalamaz. Tek sunucuda başlar; yük arttığında aynı paketi yeni sunuculara kurup kümeye katarsınız.

Veri kaynakları

PostGISOracle SpatialSQL Server GeoPackageShapefileGeoTIFF / COG HTTP ve S3 üzerindeki COGUzak WFS / WMS

SQL sorgusunu doğrudan katman olarak yayınlayabilirsiniz. Bağlantı bilgileri şifreli saklanır.

Küme ve performans

  • Redis ile paylaşılan katalog, oturum ve karo önbelleği
  • Lider seçimi ve katmanların node'lara otomatik yerleşimi
  • Meta-tile çizim, önbellek ısıtma ve katman bazında gecikme ölçümü
  • GPU varsa GPU ile, yoksa CPU ile çizim

Güvenlik ve işletim

  • Admin ve Editor rolleri, çalışma alanı bazında yetki
  • Taslak katmanlar hiçbir servisten dışarı verilmez
  • Her yönetim işlemi denetim kaydına yazılır
  • Arayüzden yedekleme ve geri yükleme, Prometheus metrikleri
Açık kaynak

Kodu açık, lisansı GPL

MapSystem, GNU GPL v3 lisansıyla dağıtılan açık kaynak bir yazılımdır. Kaynak kodu inceleyebilir, kendi sunucunuzda derleyebilir, değiştirip geliştirebilirsiniz. Lisans ücreti yoktur.

Kurulum

Tek komutla kurun, tek komutla büyütün

Ubuntu 22.04 ya da 24.04 üzerinde aşağıdaki betikleri kullanabilirsiniz. Betikler paketi indirir, SHA-256 özetini doğrular, .NET çalışma zamanını ve servisi kurar. Hepsi git deposunda da duruyor.

Tek sunucu

curl -fsSL https://mapsystem.com.tr/indir/kur.sh | sudo bash

Kurulum bitince sunucunun adresini tarayıcıda açın. İlk girişte yönetici parolasını değiştirin.

Kümenin ilk node'u

curl -fsSL https://mapsystem.com.tr/indir/kur.sh | sudo bash -s -- --kume

Kurulum sonunda kümenin katılım anahtarını üretir ve ekrana yazar. Diğer node'lar kümeye bu anahtarla katılır; bir parola gibi saklayın.

Kümeye node ekleme

curl -fsSL https://mapsystem.com.tr/indir/node-ekle.sh | sudo bash -s -- \
  --kume http://192.168.0.105 --anahtar <katılım-anahtarı>

--kume kümedeki herhangi bir node'un adresi, --anahtar ilk node'un ürettiği katılım anahtarıdır. Anahtarı siz belirlemezsiniz; unuttuysanız kümedeki bir node'da sudo mapsystem-deploy --anahtar komutu gösterir. Betik kümeyle aynı sürümü kurar, node birkaç saniye içinde Küme ekranında görünür.

İnternete kapalı sunucular için paketi indirip sudo ./kur.sh --paket mapsystem-1.0.3-linux-x64.tar.gz ile kurabilirsiniz. Ayrıntılı kılavuz: Kurulum ve node ekleme.

MapSystem'i kendi verinizle görün

Kurulum, veri taşıma ve eğitim için ekibimizle görüşün. Kurumunuzun verisiyle çalışan bir demo hazırlayalım.

E-Sistem ile iletişime geçin