Building Multi-Tenant applications with Django and Django-Tenants

Jatin Goel (~jatin15)


2

Votes

Description:

Modern solutions require to be scalable and cater to the needs of different customers by keeping their data segregated. Come explore how we can build scalable solutions with Django and truly make a Multi-Tenant solution, different ways possible to achieve this and how we’ve cracked that tough nut.

  1. Brief intro about myself
  2. Traditional systems
    • On-Prem
    • Isolated deployments for each customer
  3. Multi-tenancy
    • What it is?
    • How does it solve the above problem
    • Pros and Cons
    • Different multi-tenancy approaches
  4. Django tenants
    • How it works
    • All the different components of the library

In this workshop we'll go over:

  1. Setting up a Django project
  2. Integrating Celery with regular Django project
  3. Postgres schemas
  4. Converting the single-tenant project to multi-tenant with Django-Tenants
  5. Types of Multi-Tenancy
  6. Creating organisations and domains
  7. Tenant Schema Router
  8. Tenant Aware Celery App
  9. Periodic tasks for each tenant
  10. Database Routers (Advanced) (if time permits)

By end of this workshop you should've the right information to know whether your app needs to be a MT app and how we manage these multiple tenants

Prerequisites:

  1. Python 3.11
  2. Django 4.1
  3. Docker
  4. Basic Django knowledge
  5. Basic knowledge about async / distributed tasks
  6. Knowledge about django cookiecutter setup, so it's easier to navigate through the project structure

Speaker Links:

https://www.linkedin.com/in/goeljatin/

Section: Web & App development
Type: Workshops
Target Audience: Intermediate
Last Updated: