Skip to content

Multi-Tenancy Isn’t About Databases

You start off with what seems like the obvious solution to a multi-tenant SaaS application. We have tenant A. We have tenant B. We have one application and one database. Within that database, for every structure, whether that is a table, collection, or stream, we segregate things by a tenant ID. It is simple. It is easy. It works. Until it does not. What happens when one tenant imports five million records? Or they run a bunch of reports, and some of those reports are massive? That shared infrastructure which seemed simple is also what is coupling everything together. YouTube… Read More »Multi-Tenancy Isn’t About Databases

Resilience Patterns Can Make Your System Less Resilient

You wanted your system to be resilient, so you followed the standard advice. You added retries.You added circuit breakers.You added fallbacks. But now your system is less resilient. Not because those patterns are bad. They are not. The problem is they are doing exactly what you told them to do. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. Retries are great for network blips and transient issues. But the tradeoff is that you are adding more load to a system that might already be… Read More »Resilience Patterns Can Make Your System Less Resilient

Stop Blaming Event-Driven Architecture

So, you adopted event-driven architecture because your system was a rat’s nest of coupling, and events were the answer to decouple it. But now debugging is a nightmare. You have events coming in out of order. You have retries causing duplicates and multiple different side effects. Local development is a pain. It’s frustrating, right? But we use events for a reason. YouTube Check out my YouTube channel, where I post all kinds of content on Software Architecture & Design, including this video showing everything in this post. Events can help us reduce temporal coupling within our system. We can have a publisher… Read More »Stop Blaming Event-Driven Architecture