It allows you to scale one independently of the other, and you can have different codebase and deployment workflows.