How does topography affect composite SLA?

HOW TO -️ October 18, 2021

I looked at How do you calculate the compound Service Level Agreement (SLA) for cloud services? and am still not sure how topography affects SLA. Suppose a request...

  1. passes through one instance of Service A, where all Services have SLA s
  2. resulting in concurrent work items on Kafka topics K1 and K2, where Kafka has SLA k
  3. which get consumed concurrently by Services B1 and B2 respectively (B1 consumes K1; B2 consumes K2)
  4. which both send their results via a third Kafka topic K3
  5. and all 3 services (A, B1, B2) read and write a common DB with SLA d

Suppose this is all in the same availability zone. Here are some questions I have:

  1. Does the SLA for Kafka only figure into the calculation once? I'm guessing Kafka is either up or down for the entire AZ, so it doesn't matter how many Kafka topics I use, connecting however many components.
  2. Does the SLA for AWS ECS microservices figure into the calculation as many times as they appear on my execution path according to the SLA question referenced above which explains how to calculate for serial and parallel paths?
  3. Does the SLA for the DB appear along each execution path separately like in #2 above for the microservices? Or is it more like Kafka, affecting the entire AZ?

Answer

this might be a duplicate of https://devops.stackexchange.com/questions/711/how-do-you-calculate-the-compound-service-level-agreement-sla-for-cloud-servic ? I always assume that the SLA of a whole system is no better than the lowest SLA provided by any of its composite parts across all regions and data-centres. No need to do any complicated maths. e.g. if you have a thousand components with 99.999999% uptime, and a DB with 50% uptime and your app relies on that DB, then your app has a maximum uptime of 50%. No need for any math at all. Unless you're reducing that yourself by doing something that restricts your ability to take advantage of the 50%. @BruceBecker I edited my questions to further distinguish them from the one we both linked to, see especially #3.

To "Software Engineer": the composite SLA can be much worse than the lowest single SLA: https://youtu.be/syi3\_ePY4Ic

Initializing...