Multi-tenancy architecture is a software that is designed in such a way that a single instance of the application serves multiples customers, known as tenants. Each tenant has the same underpinning resources, but their data and configurations are logically isolated from each other. The way to go about things is to use a model which is suitable for cloud-based services, thus, the total reduction of infrastructure costs and maintenance efforts is achieved.