Let’s Architect! Designing architectures for multi-tenancy
AWS Architecture BlogLet’s Architect! Designing architectures for multi-tenancyby Luca Mezzalira, Federica Ciuffo, Laura Hyatt, Vittorio Denti, and Zamira Jaupaj | on07 JUN 2023| inAmazon Elastic Container Service,Amazon Elastic Kubernetes Service,Architecture,AWS Lambda,Thought Leadership|Permalink|ShareUnderstanding architectural patterns for multi-tenancy has become crucial for architects and developers aiming to deliver scalable, secure, and cost-effective solutions. Isolating tenant data is a fundamental responsibility for Software as a Service (SaaS) providers. In this edition ofLet’s Architect!, we talk about comprehensive exploration of multi-tenant architectures, covering various aspects, such as SaaS microservices, SaaS serverless, SaaS EKS, and an insightful whitepaper.SaaS microservices deep dive: Simplifying multi-tenant developmentIn this session, Michael Beardsley, Principal Solutions Architect at AWS, takes a deep dive into the realm of multi-tenant microservices, exploring various patterns and strategies that enable the seamless implementation of multi-tenant microservices, all while ensuring that additional complexity is not imposed upon the SaaS builders. He shares practical patterns to simplify the development process by addressing crucial aspect, such as authorization, data access, tenant isolation, metrics, billing, logging, and a plethora of other considerations; this is irrespective of the chosen compute platform (likeAmazon Elastic Container Service,Amazon Elastic Kubernetes Service[Amazon EKS], orAWS Lambda) or database solution.There is another session available that highlights specific techniques and architecture strategies that can directly impact the success of a SaaS business. If you’re interested in learning more aboutoptimizing multi-tenant SaaS architecture, this session is a great opportunity.Take me to this video!SaaS multi-tenant microservicesBuilding a Multi-Tenant SaaS Solution Using AWS Serverless ServicesIn thisAWS Partner Network (APN) Blogpost, you will explore a reference solution that presents a comprehensive perspective on a functional multi-tenant serverless SaaS environment. This solution effectively showcases various essential components required to construct a multi-tenant SaaS solution using serverless services, including onboarding processes, tenant isolation mechanisms, data partitioning techniques, a tenant deployment pipeline, and robust observability measures.By delving into these aspects, you can gain valuable insights into the architecture and design considerations involved in creating a successful multi-tenant SaaS solution.Take me to this AWS APN blogpost!Tenant registration flowAmazon EKS SaaS deep dive: A multi-tenant EKS SaaS solutionIn this re:Invent 2021 presentation, Tod Golding, Principal Partner Solutions Architect, chats about a SaaS reference solution that addresses fundamental multi-tenant considerations, examining its approach to core SaaS topics, including tenant isolation, identity, onboarding, tenant administration, and data partitioning. The goal is to explore an Amazon EKS SaaS architecture through the lens of working code and highlight the key architectural strategies that were used in this reference environment.There is also valuable information available onGithubregarding EKS multi-tenancy. Exploring the Github repositories related to EKS multi-tenancy can provide further insights, resources, and practical examples for implementing multi-tenant architectures on EKS. This presentation is an engaging way to dive deeper into this topic and gain a more comprehensive understanding of best practices and real-world implementations.Take me to this video!Tenant deployment modelSaas Storage StrategiesStorage represents a challenging aspect of building and delivering multi-tenant software solutions. There are different strategies that can be used to partition tenant data, each with a unique set of trade-offs for implementing separation between tenants. This whitepaper covers different storage models for multi-tenancy; in particular, you can learn about the:Silo model(data from the tenant is fully isolated)Pool model(all the tenants use the same database and table)Bridge model(single database but a different table for each tenant)For each of these models, the whitepaper describes in detail how they can be implemented, as well as the different trade-offs in terms of isolation and agility. You can also discover how these tenancy models can be implemented specifically on databases, such asAmazon DynamoDBandAmazon Relational Database Service, thus covering both NoSQL and SQL scenarios.Take me to this whitepaper!Partitioning model tradeoffsSee you next time!Thanks for joining our conversation on multi-tenant SaaS architectures! Next time, we’ll talk about open-source technologies.To find all the blogs from this series, you can check out theLet’s Architect!list of content on theAWS Architecture Blog.TAGS:communication,containers,event driven architecture,Let's Architect,microservices,re:InventLuca MezzaliraLuca is Principal Solutions Architect based in London. He has authored several books and is an international speaker. He lent his expertise predominantly in the solution architecture field. Luca has gained accolades for revolutionizing the scalability of front-end architectures with micro-frontends, from increasing the efficiency of workflows, to delivering quality in products.Federica CiuffoFederica is a Solutions Architect at Amazon Web Services. She is specialized in container services and is passionate about building infrastructure with code. Outside of the office, she enjoys reading, drawing, and spending time with her friends, preferably in restaurants trying out new dishes from different cuisines.Laura HyattLaura Hyatt is a Solutions Architect for AWS Public Sector and helps Education customers in the UK. Laura helps customers not only architect and develop scalable solutions but also think big on innovative solutions facing the education sector at present. Laura's specialty is IoT, and she is also the Alexa SME for Education across EMEA.Vittorio DentiVittorio Denti is a Machine Learning Engineer at Amazon based in London. After completing his M.Sc. in Computer Science and Engineering at Politecnico di Milano (Milan) and the KTH Royal Institute of Technology (Stockholm), he joined AWS. Vittorio has a background in distributed systems and machine learning. He's especially passionate about software engineering and the latest innovations in machine learning science.Zamira JaupajZamira is an Enterprise Solutions Architect based in the Netherlands. She is highly passionate IT professional with over 10 years of multi-national experience in designing and implementing critical and complex solutions with containers, serverless, and data analytics for small and enterprise companies.
Understanding architectural patterns for multi-tenancy has become crucial for architects and developers aiming to deliver scalable, secure, and cost-effective solutions. Isolating tenant data is a fundamental responsibility for Software as a Service (SaaS) providers. In this edition of Let’s Architect!, we talk about comprehensive exploration of multi-tenant architectures, covering various aspects, such as SaaS microservices, […]
Luca Mezzalira
Amazon Elastic Container Service Amazon Elastic Kubernetes Service Architecture AWS Lambda Thought Leadership