Kontent.ai uses several services and platforms to provide a reliable authoring experience for customers and end-users. Are you evaluating Kontent.ai and want to find out what services it uses behind the scenes? Want to make informed decisions about your own app's architecture? You're in the right place.
The architecture of Kontent.ai in a nutshell
The core services behind Kontent.ai are running in Azure, a Microsoft-operated cloud computing service. The Azure infrastructure model used by Kontent.ai is Platform as a Service (PaaS) and it's also where your content is stored.All Azure resources (such as App Services, Cosmos DBs, Azure SQL databases) are regularly reviewed and secured based on the latest industry standards using Azure Security Center. We also have a security policy in place to ensure your content is safe.
Azure aside, Kontent.ai uses the following third-party services:
Fastly content delivery network (CDN) for delivering your content to your customers and users
The Fastly CDN has edge nodes all around the world, ensuring fast content delivery no matter the destination.
How Kontent.ai stores your data
The data of your project is stored in a specific data center. In every data center, Kontent.ai uses a decoupled architecture for storing your content. The content you create is saved in two repositories: the content repository and the delivery repository.
The delivery repository is optimized for reading data. This data is used for Delivery REST API and Delivery GraphQL API. To ensure high availability of the live data, the live and preview environments are isolated from one another.
The services in these repositories are written in ASP.NET.
We back up your data daily and store the backups for 14 days for the purposes of disaster recovery. All your data is safely encrypted at rest.
Simplified overview of Kontent.ai's architecture and the third-party services it uses. Non-third-party resources include:
Kontent.ai UI - A static web app built with React and TypeScript. Communicates with the internal administration API to make any changes to the Kontent.ai project and its content.
Management API - Kontent.ai API for managing projects, environments, settings, content model, content, and assets.
Administration API - Internal Kontent.ai API used as a backend for the Kontent.ai UI. The API forwards requests to specific internal services depending on the action performed. For example, content changes are forwarded to an internal Elastic search service so that the content is reindexed.
Elastic search - A service that indexes content in a Kontent.ai project and provides full-text search functionality to the users in the Kontent.ai UI.
Asynchronous tasks - A service that collects events and performs actions that don't need to be performed in real-time such as sending an email.
Write-optimize data - A database optimized for frequent write operations such as content changes made in the UI or via API.
Data backup - A storage used for backups of customer projects.
Event hub - A service used to forward content change events from the write-optimized database (internal API and Management API) to a read-optimized database (Delivery APIs).
Event processing - A service that processes events from the Event hub and forwards them to other services.
Delivery API – Kontent.ai API for delivering content items at scale.
Read-optimized data - A database optimized for frequent read operations such as those performed via Delivery API.
Webhook notifications - A service that sends HTTP POST requests to specific URLs based on the webhook configuration in a Kontent.ai project.
Subscriptions & Billing - A service that manages data around subscriptions and billing. Calculates usage reports, billing reports, and processes payments.
Simplified overview of Kontent.ai data centers. Each data center contains the content and delivery repositories with several services.