Hypertune
Search
⌃K

Architecture

The Hypertune platform is designed with performance, availability and security in mind. Fault-tolerance and fallback measures are built in, allowing you to depend on our SDK or APIs to provide access to up-to-date configuration data.

Single initialization

To load configuration from Hypertune, your system makes just one API call upfront. Keeping it simple makes it easier for you to integrate with Hypertune, and reduces the likelihood of bugs in your implementation.
When initializing your configuration, you can provide some of the arguments for your logic. These will automatically be applied to simplify your logic, ensuring the minimal bundle is delivered to clients.
The remaining logic (if any) is then evaluated locally. This behaviour ensures that accessing fields in your schema is a local operation that doesn't require a connection to Hypertune's servers after intialization. This also simplifies using the configuration, as after initialization, accessing configuration can always be a synchronous operation.

Delivering at the edge

To ensure users are served configuration quickly, Hypertune processes requests from the SDK using a set of globally distributed edge servers. This minimizes latency as requests are made to a server near your users.
These edge servers also act as a caching layer, so after a project has been loaded once, its definition can be accessed quickly and efficiently. This also ensures that even in the unlikely event that Hypertune core is unavailable, users can still access the configuration data.
When you publish new commits, our caching layer automatically updates to ensure users are always served the latest version.

Traffic prioritization

Hypertune enables you to collect analytics data from your applications. This is to enable its A/B testing and ML features, and to support you in understanding how your logic is being evaluated. We maintain separate endpoints and worker pools for handling analytics events, which allows us to prioritize delivering configuration quickly and reliably so users can use your applications.

Observability

When something goes wrong, it's important you're able to identify and fix issues quickly. We offer comprehensive analytics on how your logic is being evaluated, as well as logs which include debugging information for quickly targeting problems.
The analytics and logs can be viewed on the project page of the Hypertune UI.

SDK protections

The Hypertune SDK comes with a number of extra safety features for your applications.
The SDK automatically downloads your project schema, and validates you're using your configuration in a type-safe way using your existing tools. This allows you to catch and fix serious bugs before you deploy to production.
Additionally, when using the SDK, you specify fallback values that are used in case the SDK is unable to reach Hypertune. This provides a robust fallback mechanism, even in the unlikely event of complete outages.