Geo Map Vision

Blog

Migrating from MapServer to QGIS Server on Kubernetes

Why We Migrated

  • Style Consistency: QGIS projects → direct server rendering
  • Complex Queries: Native support for PostGIS ST_ functions
  • Unified Environment: Single toolchain for desktop/server

Migration Steps

  1. Containerized QGIS Server with custom plugins
  2. Helm chart for statefulset deployment
  3. NGINX reverse proxy with caching
  4. Gradual traffic shift using Istio

Performance Gains

MetricMapServerQGIS Server
Req/sec42127
Style changes2h5m
Cold start8s1.2s

Continue reading

Building a Scalable QGIS MapServer on Kubernetes

Architecture Overview

Our production stack combines:

  • QGIS Server containers orchestrated via Kubernetes
  • CNPG Operator for PostgreSQL/PostGIS clusters
  • Horizontal Pod Autoscaling based on WMS request load

Key Components

graph TD
    A[Client Requests] --> B[K8s Ingress]
    B --> C[QGIS Server Pods]
    C --> D[(PostGIS Cluster)]
    D --> E[Cloud Storage]

Performance Benchmarks

ConfigurationReq/sec99th % Latency
Single Node421.2s
K8s Cluster218380ms

See our Technology Stack for more infrastructure details

Continue reading