Application Architecture
Applications built with the Atlan Application SDK follow a layered architecture that combines infrastructure abstraction and workflow orchestration. This architecture handles the complexity of distributed applications while providing a structured foundation for building applications that integrate with Atlan's platform.
Core components
Applications built with the Atlan Application SDK leverage industry-leading technologies to deliver enterprise-grade capabilities. The application architecture integrates four specialized components, each chosen for their proven reliability and specific strengths:
Application SDK
The Python framework that provides Atlan-specific APIs and abstractions for building applications.
Dapr Runtime
Sidecar-based runtime providing pluggable building blocks for infrastructure tasks.
Temporal
System for defining and managing workflows as code with fault-tolerance and automatic retries.
FastAPI Server
High-performance web framework for building APIs with automatic documentation and type validation.
How it works
These components work together in a layered architecture to provide a complete application development platform. Each layer handles specific responsibilities while maintaining clean separation of concerns:
- Your application code defines workflows and activities using Python functions and decorators provided by the Atlan Application SDK. This layer contains your business logic and workflow definitions.
- The Application SDK handles three critical responsibilities:
- Registering workflows and activities with Temporal - Automatically registers your Python functions as Temporal workflows and activities
- Providing secure access to Atlan APIs - Manages authentication and provides a clean interface to Atlan's platform APIs
- Managing infrastructure interactions - Provides simple Python interfaces for complex distributed system operations
- Temporal orchestrates the execution of workflows once they're registered. It handles:
- Scheduling and task dispatch - Manages when and how workflows and activities are executed
- Automatic retries on failure - Automatically retries failed activities based on configurable policies
- Persisting workflow state across steps and restarts - Maintains complete workflow state across service restarts
- Dapr sidecar runs alongside your application service, offering infrastructure capabilities via HTTP or gRPC APIs:
- State management - Store and retrieve application state with support for multiple backends (Redis, CosmosDB, etc.)
- Pub/Sub messaging - Send and receive messages using pluggable message brokers (Kafka, NATS, etc.)
- Secrets access - Securely retrieve secrets from various secret stores (AWS Secrets Manager, HashiCorp Vault, etc.)
- FastAPI server provides the web framework for your application's API endpoints:
- Automatic API documentation generation with OpenAPI/Swagger
- Request validation and response serialization using Python type hints
- High-performance async request handling for scalable applications
See also
- Apps framework - Understand the broader application development framework and ecosystem
- Sample applications - Explore example applications that demonstrate these architectural patterns