Experiment #2: Verify Critical Dependencies

Let’s get started on your next experiment! This experiment will focus on critical and non critical dependencies. A dependency is any service that another service requires in order to function. What happens to our application when it can’t contact a critical dependency, such as a payment or checkout service?

For this experiment we have to think about our critical path. The critical path of an application is the set of components and workflows in an application that is required for the application to serve its core function. Think of it as “what your business needs in order to make money”

First, let’s take another look at the Sock Shop architecture: sockshop-topology

What are the critical applications in this diagram?

What are the non-critical applications in this diagram?

We’ll use Gremlin to answer both of these questions and gain a better understanding of the possible failure modes.