{
  "schemaVersion": 1,
  "site": "DerArchitekturkompass.de",
  "url": "https://derarchitekturkompass.de/",
  "language": "de",
  "author": {
    "name": "Aaron Kreis",
    "url": "https://aaron.de/"
  },
  "license": "CC BY 4.0",
  "licenseUrl": "https://creativecommons.org/licenses/by/4.0/",
  "usageTermsUrl": "https://derarchitekturkompass.de/lizenz.html",
  "attribution": "Aaron Kreis, DerArchitekturkompass.de",
  "count": 146,
  "concepts": [
    {
      "id": "adapter",
      "title": "Adapter",
      "titleDe": "Unpassende Schnittstelle übersetzen",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/adapter.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/adapter.json",
      "contentHash": "sha256:ccd81cb45101ccb6",
      "modifiedAt": "2026-10-24"
    },
    {
      "id": "aggregator",
      "title": "Aggregator",
      "titleDe": "Zusammengehörige Nachrichten bündeln",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/aggregator.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/aggregator.json",
      "contentHash": "sha256:ac13493b887f527e",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "ambassador",
      "title": "Ambassador",
      "titleDe": "Stellvertreter für ausgehende Aufrufe",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/ambassador.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/ambassador.json",
      "contentHash": "sha256:d3499bb83464be45",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "anti-corruption-layer",
      "title": "Anti Corruption Layer",
      "titleDe": "Übersetzungsschicht zum Schutz des eigenen Modells",
      "category": "domaenenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/anti-corruption-layer.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/anti-corruption-layer.json",
      "contentHash": "sha256:a91f6b61babebbf4",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "api-gateway",
      "title": "API Gateway",
      "titleDe": "Ein Eingang für alle Aufrufe von außen",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/api-gateway.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/api-gateway.json",
      "contentHash": "sha256:d5b42014a20ac1cb",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "architecture-decision-records",
      "title": "Architecture Decision Records",
      "titleDe": "Architekturentscheidungen festhalten",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/architecture-decision-records.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/architecture-decision-records.json",
      "contentHash": "sha256:75bfc223b3aa6630",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "attribute-based-access-control",
      "title": "Attribute Based Access Control",
      "titleDe": "Rechte anhand von Eigenschaften entscheiden",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/attribute-based-access-control.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/attribute-based-access-control.json",
      "contentHash": "sha256:80ad27e9eba9a388",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "audit-logging",
      "title": "Audit Logging",
      "titleDe": "Festhalten, wer wann was getan hat",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/audit-logging.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/audit-logging.json",
      "contentHash": "sha256:c4cf187872055523",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "autoscaling",
      "title": "Autoscaling",
      "titleDe": "Zahl der Instanzen automatisch an die Last anpassen",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/autoscaling.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/autoscaling.json",
      "contentHash": "sha256:e9b1571202fc1b9d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "backend-for-frontend",
      "title": "Backend for Frontend",
      "titleDe": "Ein eigenes Backend je Oberfläche",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/backend-for-frontend.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/backend-for-frontend.json",
      "contentHash": "sha256:d3a398fe55deff52",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "backpressure",
      "title": "Backpressure",
      "titleDe": "Der Empfänger bremst den Sender",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/backpressure.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/backpressure.json",
      "contentHash": "sha256:6a2a0a805f72e25d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "batch-processing",
      "title": "Batch Processing",
      "titleDe": "Große Datenmengen gesammelt verarbeiten",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/batch-processing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/batch-processing.json",
      "contentHash": "sha256:e3b0e91142e3adff",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "blue-green-deployment",
      "title": "Blue Green Deployment",
      "titleDe": "Zwischen zwei vollständigen Umgebungen umschalten",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/blue-green-deployment.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/blue-green-deployment.json",
      "contentHash": "sha256:68109c2054cc9288",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "bounded-context",
      "title": "Bounded Context",
      "titleDe": "Abgegrenzter Geltungsbereich eines Fachmodells",
      "category": "domaenenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/bounded-context.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/bounded-context.json",
      "contentHash": "sha256:a0fee8ad7e7299e2",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "broker-pattern",
      "title": "Broker Pattern",
      "titleDe": "Vermittler zwischen Aufrufern und Anbietern",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/broker-pattern.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/broker-pattern.json",
      "contentHash": "sha256:debf0e9068739d2d",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "bulkhead",
      "title": "Bulkhead",
      "titleDe": "Ressourcen je Aufgabe getrennt zuteilen",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/bulkhead.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/bulkhead.json",
      "contentHash": "sha256:3612120140b43da1",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "cache-aside",
      "title": "Cache Aside",
      "titleDe": "Die Anwendung füllt den Cache bei Bedarf",
      "category": "caching-performance",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/cache-aside.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/cache-aside.json",
      "contentHash": "sha256:5ce5f60368711a93",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "caching",
      "title": "Caching",
      "titleDe": "Ergebnisse zwischenspeichern",
      "category": "caching-performance",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/caching.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/caching.json",
      "contentHash": "sha256:4b970bb25adf51d0",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "canary-release",
      "title": "Canary Release",
      "titleDe": "Eine neue Version zuerst für wenige Nutzer freigeben",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/canary-release.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/canary-release.json",
      "contentHash": "sha256:a7b518542b758b22",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "cap-theorem",
      "title": "CAP Theorem",
      "titleDe": "Bei Netztrennung Konsistenz oder Verfügbarkeit wählen",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/cap-theorem.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/cap-theorem.json",
      "contentHash": "sha256:8b104793c562d2f0",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "cell-based-architecture",
      "title": "Cell Based Architecture",
      "titleDe": "Vollständige Kopien des Systems für Teilmengen der Kunden",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/cell-based-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/cell-based-architecture.json",
      "contentHash": "sha256:1b1d6b08b04d4e66",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "change-data-capture",
      "title": "Change Data Capture",
      "titleDe": "Datenbankänderungen als Ereignisse weitergeben",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/change-data-capture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/change-data-capture.json",
      "contentHash": "sha256:079a8b88c94d4e9c",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "chaos-engineering",
      "title": "Chaos Engineering",
      "titleDe": "Ausfälle absichtlich herbeiführen und beobachten",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/chaos-engineering.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/chaos-engineering.json",
      "contentHash": "sha256:532d2d55f12b6680",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "choreography",
      "title": "Choreography",
      "titleDe": "Beteiligte reagieren selbstständig auf Ereignisse",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/choreography.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/choreography.json",
      "contentHash": "sha256:da811452d49cfb13",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "circuit-breaker",
      "title": "Circuit Breaker",
      "titleDe": "Einen gestörten Dienst vorübergehend nicht mehr aufrufen",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/circuit-breaker.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/circuit-breaker.json",
      "contentHash": "sha256:f7dc011d39b400d1",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "claim-check",
      "title": "Claim Check",
      "titleDe": "Große Inhalte auslagern und nur einen Verweis senden",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/claim-check.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/claim-check.json",
      "contentHash": "sha256:3978d51814d91652",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "clean-architecture",
      "title": "Clean Architecture",
      "titleDe": "Anwendungsfälle im Zentrum, Technik am Rand",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/clean-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/clean-architecture.json",
      "contentHash": "sha256:1fdfc5e60868e359",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "client-server",
      "title": "Client Server",
      "titleDe": "Anfragen an einen zentralen Anbieter",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/client-server.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/client-server.json",
      "contentHash": "sha256:ffe50e711fa91a7b",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "compensating-transaction",
      "title": "Compensating Transaction",
      "titleDe": "Einen abgeschlossenen Schritt fachlich rückgängig machen",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/compensating-transaction.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/compensating-transaction.json",
      "contentHash": "sha256:8153f893fc265cd5",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "competing-consumers",
      "title": "Competing Consumers",
      "titleDe": "Mehrere Empfänger teilen sich eine Warteschlange",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/competing-consumers.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/competing-consumers.json",
      "contentHash": "sha256:616ba01111dbf5cc",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "configuration-server",
      "title": "Configuration Server",
      "titleDe": "Konfiguration zentral bereitstellen",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/configuration-server.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/configuration-server.json",
      "contentHash": "sha256:8c63b79ecf665b5c",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "consensus",
      "title": "Consensus",
      "titleDe": "Mehrere Knoten einigen sich auf einen Wert",
      "category": "verteilte-systeme",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/consensus.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/consensus.json",
      "contentHash": "sha256:2032b1a83a8f5802",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "consistent-hashing",
      "title": "Consistent Hashing",
      "titleDe": "Schlüssel so verteilen, dass beim Umbau wenig umzieht",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/consistent-hashing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/consistent-hashing.json",
      "contentHash": "sha256:eed1e9071290d922",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "content-based-routing",
      "title": "Content Based Routing",
      "titleDe": "Nachrichten nach ihrem Inhalt weiterleiten",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/content-based-routing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/content-based-routing.json",
      "contentHash": "sha256:780285835753ca25",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "content-delivery-network",
      "title": "Content Delivery Network",
      "titleDe": "Inhalte von Servern nahe beim Nutzer ausliefern",
      "category": "caching-performance",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/content-delivery-network.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/content-delivery-network.json",
      "contentHash": "sha256:dc3eead7256ef134",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "conways-law",
      "title": "Conway's Law",
      "titleDe": "Systemaufbau folgt dem Aufbau der Organisation",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/conways-law.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/conways-law.json",
      "contentHash": "sha256:a01ee1dcd9159802",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "correlation-identifier",
      "title": "Correlation Identifier",
      "titleDe": "Eine Kennung verknüpft Antwort und Anfrage",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/correlation-identifier.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/correlation-identifier.json",
      "contentHash": "sha256:b7a22b88492637da",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "cqrs",
      "title": "CQRS",
      "titleDe": "Schreiben und Lesen über getrennte Modelle",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/cqrs.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/cqrs.json",
      "contentHash": "sha256:b894e36293215463",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "data-lake",
      "title": "Data Lake",
      "titleDe": "Rohdaten in beliebigem Format ablegen",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/data-lake.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/data-lake.json",
      "contentHash": "sha256:d1359b182109c9fa",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "data-mesh",
      "title": "Data Mesh",
      "titleDe": "Fachbereiche verantworten ihre Daten als Produkt",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/data-mesh.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/data-mesh.json",
      "contentHash": "sha256:c66f3882ebe51e86",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "data-warehouse",
      "title": "Data Warehouse",
      "titleDe": "Aufbereitete Daten für Auswertungen",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/data-warehouse.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/data-warehouse.json",
      "contentHash": "sha256:616becbae3bdce3d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "dead-letter-queue",
      "title": "Dead Letter Queue",
      "titleDe": "Ablage für nicht verarbeitbare Nachrichten",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/dead-letter-queue.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/dead-letter-queue.json",
      "contentHash": "sha256:025577ccd2f30da7",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "defense-in-depth",
      "title": "Defense in Depth",
      "titleDe": "Mehrere Schutzschichten hintereinander",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/defense-in-depth.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/defense-in-depth.json",
      "contentHash": "sha256:926390f205b3b048",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "delivery-semantics",
      "title": "Delivery Semantics (At Most Once, At Least Once, Exactly Once)",
      "titleDe": "Zustellung und fachliche Ausführung unterscheiden",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/delivery-semantics.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/delivery-semantics.json",
      "contentHash": "sha256:27e1371f09257a6c",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "dependency-injection",
      "title": "Dependency Injection",
      "titleDe": "Abhängigkeiten von außen übergeben",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/dependency-injection.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/dependency-injection.json",
      "contentHash": "sha256:2646ffb719f0a773",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "disaster-recovery",
      "title": "Disaster Recovery (RPO und RTO)",
      "titleDe": "Wiederanlauf nach dem Verlust eines Standorts",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/disaster-recovery.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/disaster-recovery.json",
      "contentHash": "sha256:bc7046cd0ecb9fec",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "distributed-lock",
      "title": "Distributed Lock",
      "titleDe": "Sperre über mehrere Prozesse hinweg",
      "category": "verteilte-systeme",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/distributed-lock.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/distributed-lock.json",
      "contentHash": "sha256:b13532f1e16af121",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "distributed-tracing",
      "title": "Distributed Tracing",
      "titleDe": "Einen Aufruf durch alle Dienste verfolgen",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/distributed-tracing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/distributed-tracing.json",
      "contentHash": "sha256:0814d217d5a274a4",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "domain-driven-design",
      "title": "Domain Driven Design",
      "titleDe": "Software am Fachmodell ausrichten",
      "category": "domaenenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/domain-driven-design.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/domain-driven-design.json",
      "contentHash": "sha256:76239af1449105cf",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "edge-computing",
      "title": "Edge Computing",
      "titleDe": "Verarbeitung nahe an der Datenquelle",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/edge-computing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/edge-computing.json",
      "contentHash": "sha256:1e9cceb776530af7",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "encryption",
      "title": "Encryption at Rest and in Transit",
      "titleDe": "Daten verschlüsselt speichern und übertragen",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/encryption.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/encryption.json",
      "contentHash": "sha256:6bd9bddf02a5cc15",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "enterprise-service-bus",
      "title": "Enterprise Service Bus",
      "titleDe": "Zentrale Plattform für Transport, Umwandlung und Weiterleitung",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/enterprise-service-bus.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/enterprise-service-bus.json",
      "contentHash": "sha256:a9b4043c924bd70f",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "event-driven-architecture",
      "title": "Event Driven Architecture",
      "titleDe": "Bausteine reagieren auf Ereignisse",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/event-driven-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/event-driven-architecture.json",
      "contentHash": "sha256:fe3a5cb241527e1f",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "event-sourcing",
      "title": "Event Sourcing",
      "titleDe": "Zustand als Folge von Ereignissen speichern",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/event-sourcing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/event-sourcing.json",
      "contentHash": "sha256:f66f5a9e5a35ed90",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "eventual-consistency",
      "title": "Eventual Consistency",
      "titleDe": "Kopien gleichen sich später an",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/eventual-consistency.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/eventual-consistency.json",
      "contentHash": "sha256:b7a939650d8d4fe2",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "facade",
      "title": "Facade",
      "titleDe": "Eine einfache Schnittstelle vor einem komplexen Teilsystem",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/facade.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/facade.json",
      "contentHash": "sha256:1d7cda46b30be6c0",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "fallback",
      "title": "Fallback",
      "titleDe": "Ersatzantwort, wenn ein Aufruf scheitert",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/fallback.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/fallback.json",
      "contentHash": "sha256:8a15416259afd562",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "feature-toggles",
      "title": "Feature Toggles",
      "titleDe": "Funktionen per Schalter freigeben",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/feature-toggles.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/feature-toggles.json",
      "contentHash": "sha256:0c3f009b097c680d",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "forward-proxy",
      "title": "Forward Proxy",
      "titleDe": "Vermittler für ausgehende Anfragen",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/forward-proxy.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/forward-proxy.json",
      "contentHash": "sha256:74929d61111e8875",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "function-as-a-service",
      "title": "Function as a Service",
      "titleDe": "Einzelne Funktionen auf Abruf ausführen",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/function-as-a-service.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/function-as-a-service.json",
      "contentHash": "sha256:99cead5898e2bdb2",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "graceful-degradation",
      "title": "Graceful Degradation",
      "titleDe": "Bei einem Teilausfall eingeschränkt weiterarbeiten",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/graceful-degradation.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/graceful-degradation.json",
      "contentHash": "sha256:d810950d64b389cc",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "health-checks",
      "title": "Health Checks",
      "titleDe": "Dienste melden ihren Zustand",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/health-checks.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/health-checks.json",
      "contentHash": "sha256:0d938a47109d839d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "hexagonal-architecture",
      "title": "Hexagonal Architecture",
      "titleDe": "Fachliche Regeln von Web, Datenbank und Nachrichten trennen",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/hexagonal-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/hexagonal-architecture.json",
      "contentHash": "sha256:a604f0d2d83b40ca",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "hot-warm-cold-standby",
      "title": "Hot, Warm and Cold Standby",
      "titleDe": "Bereitschaftsstufen einer Ersatzumgebung",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/hot-warm-cold-standby.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/hot-warm-cold-standby.json",
      "contentHash": "sha256:75e7cc0af5b7888e",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "hub-and-spoke",
      "title": "Hub and Spoke",
      "titleDe": "Viele Systeme über eine Zentrale verbinden",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/hub-and-spoke.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/hub-and-spoke.json",
      "contentHash": "sha256:9809a9098188a48f",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "idempotency",
      "title": "Idempotency",
      "titleDe": "Mehrfache Verarbeitung ohne mehrfache Wirkung",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/idempotency.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/idempotency.json",
      "contentHash": "sha256:9a3e2dedd2e7c65f",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "immutable-infrastructure",
      "title": "Immutable Infrastructure",
      "titleDe": "Server ersetzen statt ändern",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/immutable-infrastructure.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/immutable-infrastructure.json",
      "contentHash": "sha256:5ca34509cce52101",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "inbox-pattern",
      "title": "Inbox Pattern",
      "titleDe": "Eingehende Nachrichten erst speichern, dann verarbeiten",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/inbox-pattern.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/inbox-pattern.json",
      "contentHash": "sha256:95518d3f63feef6e",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "infrastructure-as-code",
      "title": "Infrastructure as Code",
      "titleDe": "Infrastruktur in Dateien beschreiben und automatisch anlegen",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/infrastructure-as-code.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/infrastructure-as-code.json",
      "contentHash": "sha256:f64ec7a27bd738e0",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "inversion-of-control",
      "title": "Inversion of Control",
      "titleDe": "Das Framework ruft den eigenen Code auf",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/inversion-of-control.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/inversion-of-control.json",
      "contentHash": "sha256:8b6bc2d1cb035855",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "kappa-architecture",
      "title": "Kappa Architecture",
      "titleDe": "Laufende Daten mit demselben Programm erneut auswerten",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/kappa-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/kappa-architecture.json",
      "contentHash": "sha256:ef0a364b20849ea3",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "lambda-architecture",
      "title": "Lambda Architecture",
      "titleDe": "Schnelle Zwischenstände mit regelmäßiger Neuberechnung verbinden",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/lambda-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/lambda-architecture.json",
      "contentHash": "sha256:9f9142ddd5fb5ff0",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "layered-architecture",
      "title": "Layered Architecture",
      "titleDe": "Schichten mit festgelegter Aufrufrichtung",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/layered-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/layered-architecture.json",
      "contentHash": "sha256:6cb3b4e8b7c4e6c5",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "leader-election",
      "title": "Leader Election",
      "titleDe": "Einen Knoten für exklusive Aufgaben wählen",
      "category": "verteilte-systeme",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/leader-election.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/leader-election.json",
      "contentHash": "sha256:2ccb3c8d9c9b0faf",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "least-privilege",
      "title": "Least Privilege",
      "titleDe": "Nur die unbedingt nötigen Rechte vergeben",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/least-privilege.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/least-privilege.json",
      "contentHash": "sha256:db7d83f6367ad6cb",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "load-balancing",
      "title": "Load Balancing",
      "titleDe": "Anfragen auf mehrere laufende Instanzen verteilen",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/load-balancing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/load-balancing.json",
      "contentHash": "sha256:bf3b2b9b196592a3",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "loose-coupling-high-cohesion",
      "title": "Loose Coupling and High Cohesion",
      "titleDe": "Wenig Abhängigkeiten nach außen, starker Zusammenhalt innen",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/loose-coupling-high-cohesion.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/loose-coupling-high-cohesion.json",
      "contentHash": "sha256:0208e51b0112df59",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "master-worker",
      "title": "Master Worker",
      "titleDe": "Ein Master zerlegt die Arbeit, Worker erledigen die Teile",
      "category": "verteilte-systeme",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/master-worker.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/master-worker.json",
      "contentHash": "sha256:817187a830ab6861",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "materialized-view",
      "title": "Materialized View",
      "titleDe": "Vorberechnete Sicht für schnelle Abfragen",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/materialized-view.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/materialized-view.json",
      "contentHash": "sha256:af7629bbcd574c1d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "message-ordering",
      "title": "Message Ordering",
      "titleDe": "Reihenfolge von Nachrichten sicherstellen",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/message-ordering.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/message-ordering.json",
      "contentHash": "sha256:4188095984735744",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "message-router",
      "title": "Message Router",
      "titleDe": "Nachrichten nach Regeln an den passenden Kanal leiten",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/message-router.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/message-router.json",
      "contentHash": "sha256:6823b593bb75f938",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "message-translator",
      "title": "Message Translator",
      "titleDe": "Nachrichtenformat umwandeln",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/message-translator.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/message-translator.json",
      "contentHash": "sha256:8fd963ba4db7c32d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "messaging",
      "title": "Messaging",
      "titleDe": "Entkoppelte Kommunikation über Nachrichten",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/messaging.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/messaging.json",
      "contentHash": "sha256:87d9caf89f2078ab",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "microkernel-architecture",
      "title": "Microkernel Architecture",
      "titleDe": "Kleiner Kern mit einsteckbaren Erweiterungen",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/microkernel-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/microkernel-architecture.json",
      "contentHash": "sha256:79394f8cc9950157",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "microservices",
      "title": "Microservices",
      "titleDe": "Kleine, einzeln auslieferbare Dienste mit eigenen Daten",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/microservices.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/microservices.json",
      "contentHash": "sha256:6ec3282f20c3c4fd",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "model-view-controller",
      "title": "Model View Controller",
      "titleDe": "Trennung von Daten, Anzeige und Steuerung",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/model-view-controller.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/model-view-controller.json",
      "contentHash": "sha256:552b20624a47e64d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "model-view-viewmodel",
      "title": "Model View ViewModel",
      "titleDe": "Anzeige bindet sich an ein Zwischenmodell",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/model-view-viewmodel.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/model-view-viewmodel.json",
      "contentHash": "sha256:527ca9e52dcdaae2",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "modular-monolith",
      "title": "Modular Monolith",
      "titleDe": "Eine Anwendung mit klar getrennten fachlichen Modulen",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/modular-monolith.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/modular-monolith.json",
      "contentHash": "sha256:a5aacae9cdfedd44",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "monolithic-architecture",
      "title": "Monolithic Architecture",
      "titleDe": "Die gesamte Fachlichkeit in einer Anwendung",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/monolithic-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/monolithic-architecture.json",
      "contentHash": "sha256:3cbc396a401c5336",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "multi-tenancy",
      "title": "Multi Tenancy",
      "titleDe": "Eine Installation für viele Mandanten",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/multi-tenancy.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/multi-tenancy.json",
      "contentHash": "sha256:463ff812fe4dfaf7",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "observability",
      "title": "Observability",
      "titleDe": "Den inneren Zustand aus den Ausgaben erkennen",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/observability.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/observability.json",
      "contentHash": "sha256:ca2b83f8a6648f29",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "onion-architecture",
      "title": "Onion Architecture",
      "titleDe": "Ringe mit Abhängigkeiten nur nach innen",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/onion-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/onion-architecture.json",
      "contentHash": "sha256:247132effa3ee21e",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "optimistic-locking",
      "title": "Optimistic Locking",
      "titleDe": "Konflikte erst beim Speichern erkennen",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/optimistic-locking.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/optimistic-locking.json",
      "contentHash": "sha256:4956d5f6cb01a01e",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "orchestration",
      "title": "Orchestration",
      "titleDe": "Eine zentrale Steuerung ruft die Beteiligten der Reihe nach auf",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/orchestration.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/orchestration.json",
      "contentHash": "sha256:adf7e9fd73a42cd2",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "outbox-pattern",
      "title": "Outbox Pattern",
      "titleDe": "Datenänderung und ausgehende Nachricht gemeinsam sichern",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/outbox-pattern.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/outbox-pattern.json",
      "contentHash": "sha256:e1224498b52bf72b",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "pacelc-theorem",
      "title": "PACELC Theorem",
      "titleDe": "Abwägung zwischen Konsistenz und Antwortzeit auch im Normalbetrieb",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/pacelc-theorem.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/pacelc-theorem.json",
      "contentHash": "sha256:3fc1979aa3b657e6",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "partitioning",
      "title": "Partitioning",
      "titleDe": "Daten nach einem Schlüssel aufteilen",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/partitioning.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/partitioning.json",
      "contentHash": "sha256:8ed8a87a78284528",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "peer-to-peer",
      "title": "Peer to Peer",
      "titleDe": "Knoten tauschen Daten direkt untereinander aus",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/peer-to-peer.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/peer-to-peer.json",
      "contentHash": "sha256:8273f6d0e0e3b2d6",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "pessimistic-locking",
      "title": "Pessimistic Locking",
      "titleDe": "Datensatz vor der Bearbeitung sperren",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/pessimistic-locking.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/pessimistic-locking.json",
      "contentHash": "sha256:b8571bbfae41c0c7",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "pipes-and-filters",
      "title": "Pipes and Filters",
      "titleDe": "Verarbeitung als Kette einzelner Schritte",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/pipes-and-filters.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/pipes-and-filters.json",
      "contentHash": "sha256:ae3388729b32e48e",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "plugin-architecture",
      "title": "Plugin Architecture",
      "titleDe": "Funktionen über angemeldete Plugins erweitern",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/plugin-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/plugin-architecture.json",
      "contentHash": "sha256:da19eb55cf50b612",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "point-to-point-channel",
      "title": "Point to Point Channel",
      "titleDe": "Einen Auftrag an jeweils einen Empfänger verteilen",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/point-to-point-channel.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/point-to-point-channel.json",
      "contentHash": "sha256:27d5ff9955d4e5f1",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "polyglot-persistence",
      "title": "Polyglot Persistence",
      "titleDe": "Für jede Aufgabe die passende Datenbankart",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/polyglot-persistence.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/polyglot-persistence.json",
      "contentHash": "sha256:e6385e0c172edf6a",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "publish-subscribe",
      "title": "Publish Subscribe",
      "titleDe": "Eine Nachricht an alle Abonnenten",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/publish-subscribe.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/publish-subscribe.json",
      "contentHash": "sha256:1854b0f55c657bbb",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "quality-attributes",
      "title": "Quality Attributes",
      "titleDe": "Qualitätsziele als Maßstab für Entscheidungen",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/quality-attributes.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/quality-attributes.json",
      "contentHash": "sha256:e5f4041a94f9b27d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "quorum",
      "title": "Quorum",
      "titleDe": "Eine Mindestzahl an Bestätigungen verlangen",
      "category": "verteilte-systeme",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/quorum.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/quorum.json",
      "contentHash": "sha256:36aa07a8d54fe2b1",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "rate-limiting",
      "title": "Rate Limiting",
      "titleDe": "Anzahl der Anfragen je Zeitraum begrenzen",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/rate-limiting.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/rate-limiting.json",
      "contentHash": "sha256:495573f0dc079f17",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "read-replicas",
      "title": "Read Replicas",
      "titleDe": "Lesende Anfragen auf Kopien verteilen",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/read-replicas.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/read-replicas.json",
      "contentHash": "sha256:6bf7d0f02fc7311f",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "redundancy-and-failover",
      "title": "Redundancy and Failover",
      "titleDe": "Eine Ersatzkomponente übernimmt bei Ausfall",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/redundancy-and-failover.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/redundancy-and-failover.json",
      "contentHash": "sha256:c55c4a3fb2bcf906",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "remote-procedure-call",
      "title": "Remote Procedure Call",
      "titleDe": "Entfernte Funktion wie eine lokale aufrufen",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/remote-procedure-call.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/remote-procedure-call.json",
      "contentHash": "sha256:6bf1ffc9e10fed52",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "replication",
      "title": "Replication",
      "titleDe": "Daten auf mehrere Knoten kopieren",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/replication.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/replication.json",
      "contentHash": "sha256:b4977241b7bd9910",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "repository",
      "title": "Repository",
      "titleDe": "Datenzugriff hinter einer fachlichen Sammlung verbergen",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/repository.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/repository.json",
      "contentHash": "sha256:7b7605ba13e946b0",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "request-reply",
      "title": "Request Reply",
      "titleDe": "Anfrage mit eindeutig zugeordneter Antwort",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/request-reply.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/request-reply.json",
      "contentHash": "sha256:19875bedc0d9d50c",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "rest",
      "title": "REST",
      "titleDe": "Ressourcen mit einheitlichen Befehlen über HTTP ansprechen",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/rest.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/rest.json",
      "contentHash": "sha256:482f84fd2038a254",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "retry-with-backoff",
      "title": "Retry with Backoff",
      "titleDe": "Wiederholen mit wachsenden Pausen",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/retry-with-backoff.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/retry-with-backoff.json",
      "contentHash": "sha256:03e1fdefaf7f5ba6",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "reverse-proxy",
      "title": "Reverse Proxy",
      "titleDe": "Vermittler vor den eigenen Servern",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/reverse-proxy.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/reverse-proxy.json",
      "contentHash": "sha256:4388aea65debaa38",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "role-based-access-control",
      "title": "Role Based Access Control",
      "titleDe": "Rechte über Rollen vergeben",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/role-based-access-control.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/role-based-access-control.json",
      "contentHash": "sha256:886086b0d74029b2",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "rolling-deployment",
      "title": "Rolling Deployment",
      "titleDe": "Instanzen nacheinander aktualisieren",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/rolling-deployment.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/rolling-deployment.json",
      "contentHash": "sha256:3b9ea087ce3095e3",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "saga",
      "title": "Saga",
      "titleDe": "Lange Abläufe als Folge lokaler Schritte mit Ausgleich",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/saga.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/saga.json",
      "contentHash": "sha256:cf95d91450b07dad",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "scatter-gather",
      "title": "Scatter Gather",
      "titleDe": "Anfrage verteilen und Antworten einsammeln",
      "category": "messaging",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/scatter-gather.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/scatter-gather.json",
      "contentHash": "sha256:e87cc02021def405",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "secrets-management",
      "title": "Secrets Management",
      "titleDe": "Passwörter und Schlüssel zentral verwahren",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/secrets-management.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/secrets-management.json",
      "contentHash": "sha256:4044006d86cc737d",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "separation-of-concerns",
      "title": "Separation of Concerns",
      "titleDe": "Zuständigkeiten sauber trennen",
      "category": "grundlagen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/separation-of-concerns.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/separation-of-concerns.json",
      "contentHash": "sha256:bbc0678fee7cbfdb",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "serverless-architecture",
      "title": "Serverless Architecture",
      "titleDe": "Rechenleistung bei Bedarf vom Anbieter beziehen",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/serverless-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/serverless-architecture.json",
      "contentHash": "sha256:d592e57fab6b8218",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "service-discovery",
      "title": "Service Discovery",
      "titleDe": "Adressen von Diensten nachschlagen",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/service-discovery.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/service-discovery.json",
      "contentHash": "sha256:243db73557590e69",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "service-mesh",
      "title": "Service Mesh",
      "titleDe": "Netzwerkfunktionen in eine eigene Infrastrukturschicht verlagern",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/service-mesh.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/service-mesh.json",
      "contentHash": "sha256:21dfd0db0e2228ee",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "service-oriented-architecture",
      "title": "Service Oriented Architecture",
      "titleDe": "Fachliche Fähigkeiten als gemeinsame Dienste",
      "category": "architekturstile",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/service-oriented-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/service-oriented-architecture.json",
      "contentHash": "sha256:1ab24bc2452a8898",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "session-replication",
      "title": "Session Replication",
      "titleDe": "Sitzungen zwischen Instanzen kopieren",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/session-replication.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/session-replication.json",
      "contentHash": "sha256:5444c2020af7083a",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "sharding",
      "title": "Sharding",
      "titleDe": "Daten auf mehrere Server verteilen",
      "category": "datenarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/sharding.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/sharding.json",
      "contentHash": "sha256:fd7e5ec27e93d9f7",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "shared-nothing-architecture",
      "title": "Shared Nothing Architecture",
      "titleDe": "Knoten teilen weder Speicher noch Daten",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/shared-nothing-architecture.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/shared-nothing-architecture.json",
      "contentHash": "sha256:645c5e69e58f4756",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "sidecar",
      "title": "Sidecar",
      "titleDe": "Hilfsfunktionen in einem Begleitprozess",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/sidecar.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/sidecar.json",
      "contentHash": "sha256:3212751c8988f9e8",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "single-sign-on",
      "title": "Single Sign On",
      "titleDe": "Einmal anmelden, viele Anwendungen nutzen",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/single-sign-on.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/single-sign-on.json",
      "contentHash": "sha256:ba7ec0ad170d62fc",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "stateless-services",
      "title": "Stateless Services",
      "titleDe": "Dienste ohne gespeicherten Sitzungszustand",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/stateless-services.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/stateless-services.json",
      "contentHash": "sha256:d6d3aa8e584a1464",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "sticky-sessions",
      "title": "Sticky Sessions",
      "titleDe": "Einen Nutzer immer an dieselbe Instanz leiten",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/sticky-sessions.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/sticky-sessions.json",
      "contentHash": "sha256:0141936cbfdf56d5",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "strangler-fig",
      "title": "Strangler Fig",
      "titleDe": "Ein Altsystem schrittweise ablösen",
      "category": "modernisierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/strangler-fig.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/strangler-fig.json",
      "contentHash": "sha256:90682454c54adc7a",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "stream-processing",
      "title": "Stream Processing",
      "titleDe": "Daten verarbeiten, sobald sie entstehen",
      "category": "datenplattformen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/stream-processing.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/stream-processing.json",
      "contentHash": "sha256:c590af90abed2ca1",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "sync-vs-async",
      "title": "Synchronous versus Asynchronous Communication",
      "titleDe": "Auf Antwort warten oder Nachricht hinterlassen",
      "category": "integration",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/sync-vs-async.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/sync-vs-async.json",
      "contentHash": "sha256:c47e706b4b5cf6be",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "throttling",
      "title": "Throttling",
      "titleDe": "Verarbeitung unter Last gezielt verlangsamen",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/throttling.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/throttling.json",
      "contentHash": "sha256:248b3d961599dcd2",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "timeout",
      "title": "Timeout",
      "titleDe": "Wartezeit auf eine Antwort begrenzen",
      "category": "resilienz",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/timeout.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/timeout.json",
      "contentHash": "sha256:6e90fdd7e80796cb",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "token-based-authentication",
      "title": "Token Based Authentication",
      "titleDe": "Zugriff über zeitlich begrenzte Zugangsnachweise",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/token-based-authentication.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/token-based-authentication.json",
      "contentHash": "sha256:44a35dc36eca7943",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "twelve-factor-app",
      "title": "Twelve Factor App",
      "titleDe": "Zwölf Regeln für Anwendungen in der Cloud",
      "category": "deployment-betrieb",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/twelve-factor-app.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/twelve-factor-app.json",
      "contentHash": "sha256:21f3765bc81bc64a",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "two-phase-commit",
      "title": "Two Phase Commit",
      "titleDe": "Verteilte Transaktion in zwei Runden abstimmen",
      "category": "konsistenz-transaktionen",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/two-phase-commit.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/two-phase-commit.json",
      "contentHash": "sha256:a6e6886c246830e0",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "unit-of-work",
      "title": "Unit of Work",
      "titleDe": "Änderungen sammeln und gemeinsam speichern",
      "category": "anwendungsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/unit-of-work.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/unit-of-work.json",
      "contentHash": "sha256:4790c1172d71b23a",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "vertical-vs-horizontal-scaling",
      "title": "Vertical versus Horizontal Scaling",
      "titleDe": "Größere Maschine oder mehr Maschinen",
      "category": "skalierung",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/vertical-vs-horizontal-scaling.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/vertical-vs-horizontal-scaling.json",
      "contentHash": "sha256:5b10469c3144c976",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "write-behind-cache",
      "title": "Write Behind Cache",
      "titleDe": "Erst in den Cache, später in die Datenbank schreiben",
      "category": "caching-performance",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/write-behind-cache.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/write-behind-cache.json",
      "contentHash": "sha256:85bc17ebedf72612",
      "modifiedAt": "2026-10-29"
    },
    {
      "id": "write-through-cache",
      "title": "Write Through Cache",
      "titleDe": "In Cache und Datenbank zugleich schreiben",
      "category": "caching-performance",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/write-through-cache.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/write-through-cache.json",
      "contentHash": "sha256:06163e53ad596763",
      "modifiedAt": "2026-10-25"
    },
    {
      "id": "zero-trust",
      "title": "Zero Trust",
      "titleDe": "Jeden Zugriff prüfen, auch im eigenen Netz",
      "category": "sicherheitsarchitektur",
      "canonicalUrl": "https://derarchitekturkompass.de/konzepte/zero-trust.html",
      "json": "https://derarchitekturkompass.de/api/konzepte/zero-trust.json",
      "contentHash": "sha256:e3e90bc66a5917d2",
      "modifiedAt": "2026-10-29"
    }
  ]
}
