February 2022 Summaries
3 posts from Steadybit
Filter
Month:
Year:
Post Summaries
Back to Blog
Chaos engineering, traditionally seen as a complex field reserved for experts, is being democratized through the concept of declared and reusable expectations, making it accessible to a broader audience. This approach shifts the focus from just conducting experiments to establishing clear resilience expectations that can be shared and enforced across varying levels, aiding organizations in maintaining system resilience. By adopting practices like service-level agreements, error budgets, and continuous resilience, developers can encode and evolve these expectations, facilitating improved system performance even under stress, such as traffic spikes. Companies are encouraged to embrace these practices early in the development process to ensure quality and resilience are integral from the start, with Kubernetes serving as an example of how shared resilience expectations can benefit organizations. The initiative by Steadybit aims to support all businesses in building resilient systems, inviting input from the community to refine and expand this approach.
Feb 28, 2022
546 words in the original blog post.
The text discusses the importance of testing resilience patterns in software applications, particularly using a newly open-sourced library by Steadybit that facilitates writing resilience tests without additional server software. The library, available on Maven Central and GitHub, is demonstrated through the integration of resilience tests in a sample order processing application that communicates via a message queue. It describes the process of testing the application’s ability to handle message broker failures using Steadybit's Testcontainers library to simulate network delays and outages. By introducing asynchronous message dispatch and implementing a system to track and reconcile unsent messages, the application maintains functionality even when the broker fails. The article emphasizes that while resilience tests are essential for quickly identifying issues and preventing regressions, they complement rather than replace comprehensive Chaos Engineering explorations like GameDays, which offer broader insights into system behavior under failure conditions in complex architectures.
Feb 22, 2022
868 words in the original blog post.
Kubernetes resource limits play a crucial role in managing CPU and memory consumption, ensuring that individual applications do not adversely affect others running on the same node. This blog post emphasizes the importance of defining these limits by demonstrating an experiment with the fashion-bestseller service, initially without resource constraints, resulting in significant CPU usage that could potentially disrupt other applications. The post describes setting specific CPU and memory limits for the service, which effectively restricts resource consumption, showcasing how Kubernetes can control and stabilize the environment. Tools like Steadybit are highlighted for their ability to simulate resource strain and verify the functionality of resource limits, as well as their diagnostic capabilities to detect missing constraints, underscoring the necessity of implementing and testing these configurations to maintain a stable and efficient system.
Feb 08, 2022
748 words in the original blog post.