Fluctuating Load and Cost in a Containerized Environment

This real-life scenario will help you understand how wildcloud's containerized solution adapts to demand, ensuring you only pay for what you use.

In this article we illustrate the concept of fluctuating load based on traffic and how it translates into varying costs each month. This real-life scenario will help you understand how wildcloud's containerized solution adapts to demand, ensuring you only pay for what you use. Let's dive into a detailed example using our own website, hosted on wildcloud, measured over three days during a newsletter update release.

Monitoring Overview

The below image shows the Monitoring tab of the Console. It provides insights into the performance and scaling behavior of your application over time.

Here's what the Console elements indicate:

  • Currently Active Containers: A gauge indicates 1 active container, with a total capacity of 14 containers.
  • Number of Containers Over Time Graph: A line graph displays the number of active containers over time, with three metrics:
    • Solid Line: Actual number of active containers at any given time.
    • Dashed Line with Diamonds: Minimum number of active containers over time.
    • Dashed Line with Circles: Maximum number of active containers over time.

The graph's x-axis represents time (3-day period), while the y-axis represents the number of containers, ranging from 2 (minimum) to 16 (maximum).

Interpreting the Graph

The graph shows the minimum, maximum, and average number of active containers serving the tenants running on this version of the application. It's important to note that wildcloud's configuration is set at "absolute," meaning the scaling configuration is applied across all tenants rather than on a per-tenant basis. This approach ensures that the resources are shared efficiently across the entire application, and the scaling is more predictable and manageable.

The maximum number of containers is influenced by the number of tenants, their popularity at a given period and the application's scaling configuration. Containers are actively adjusted as tenants are created or deleted, and tenant movement (between versions) affects the maximum number over the entire period.

For more information on "absolute" scaling and how it differs from "per tenant" scaling, please refer to our Scaling Guide.

Timeline Analysis

Key events in the container usage timeline are:

  • Second Peak (06/16 16:24): A significant jump to 8 containers suggests a high-demand event, this was due to the release of a podcast published via a partner channel.
  • Highest Peak (08/11 13:36): The peak at 12 containers correspond just after the publication of our weekly newsletter.

Cost Implications

The beauty of a containerized environment is the ability to automatically scale resources up or down based on demand. This means that during times of low traffic, fewer containers are active, reducing costs. Conversely, during spikes in traffic, more containers are activated to handle the load, ensuring performance and user experience are not compromised.

The cost for using containers in wildcloud is calculated based on the actual hours the containers are active. Therefore, during the timeline described, costs would be lower during periods of low container usage and higher during the peaks. This dynamic scaling ensures that you only pay for the resources you need, when you need them.

Conclusion

Understanding the fluctuating load in a containerized environment is crucial for optimizing costs and performance. The wildcloud Console provides insights into how container usage adapts to your application's demand, placing control over cost and a flexibility in your hands.

If you have any questions about scaling configurations, or managing costs with wildcloud, our team is here to assist you. Reach out for guidance, and we'll help you navigate the complexities of containerized hosting.