Skip to content

Multi-Tenant: Database Per Tenant or Shared?

When building a multi-tenant application, one of the first decisions revolves around data management: Should you use a shared database or a database per tenant? YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Shared Database Let’s start with the shared database model. In this scenario, tenant A and tenant B are hitting the same API, connecting to the same database instance with the same schema. This means you need to record tenant information alongside the data you are persisting. For example, customer data might look like:… Read More »Multi-Tenant: Database Per Tenant or Shared?

Sponsor: Do you build complex software systems? See how NServiceBus makes it easier to design, build, and manage software systems that use message queues to achieve loose coupling. Get started for free.

Learn more about Software Architecture & Design.
Join thousands of developers getting weekly updates to increase your understanding of software architecture and design concepts.


Follow @CodeOpinion

Persistence Ignorance is Overrated

If you’re using an ORM and creating “domain entities” you’re likely trying to force your database structure into your domain model. That can work but the point of persistence ignorance is to let you domain model shine without knowing how it’s persisted. But you’re data structure will force you down a certain path if you treat your data model as your domain model. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Persistence Ignorance Persistence ignorance is a great concept, but in practice, it’s a little harder… Read More »Persistence Ignorance is Overrated

The Power of Ubiquitous Language in Domain-Driven Design

There’s one key aspect that can really unlock your understanding of domain-driven design: the ubiquitous language. It’s the secret sauce. Let’s explore some different ways of thinking about it that might just give you the big “aha moment” you’re looking for. YouTube Check out my YouTube channel, where I post all kinds of content accompanying my posts, including this video showing everything in this post. Be Aware of Terminology First, be acutely aware of the terminology and words used in any part of the organization. Words have different meanings depending on the context, and recognizing this can help you identify boundaries within… Read More »The Power of Ubiquitous Language in Domain-Driven Design