Application Architecture

An architecture diagram of Kloudless appliances deployed in a cluster can be found in the Multi-Node Deployment section.

Here is a description of the stack used within the appliance:

Web

  • Nginx to handle load balancing, reverse proxying, and streaming of uploads/downloads.
  • Django-based, event-driven web servers to power the API server and Developer Portal.

Data Processing

  • Python daemon worker processes to handle the heavy lifting of API requests as well as background tasks such as ensuring OAuth 2.0 tokens are refreshed and event data is collected.
  • Redis for task distribution and process orchestration.

Storage

  • PostgreSQL can be configured to store access tokens, developer portal data, and metadata on data in connected accounts.

Management

  • Saltstack to manage system and application configuration.

Kloudless also provides open-source SDKs in popular languages as well as UI Tools such as the File Explorer.