CelloSaaS supports scalability through scaling out its various layers. The cache layer can be scaled out by adding more cache nodes. The database layer supports vertical partitioning by modules and database sharding by tenants, allowing data from different modules and tenants to be distributed across multiple database servers. The web and application layers are designed to be stateless through principles like out-of-process sessions and per-call services, enabling both layers to be scaled out infinitely across multiple servers.