I've always put my virtual hosts into a single publish farm (the /virtualhosts part)
Is it still o.k. to do this for new virtual hosts.?
There is some dispatcher documentation showing a farm per virtual host. However all my existing sites are not done like this. I assume I don't have to ?.
Solved! Go to Solution.
Using multiple virtual hosts in a single farm file is fine as long as all the tenants/virtual hosts have identical configuration in terms of renders, cache, filters, statistics and other parameters.
Separating out farm files per virtual hosts usually give more control (modularity) and takes care of the Single Responsibility principle in my opinion.
As per Adobe's recommendation, we should modularize the dispatcher configs. It provides following benefits:
Modularity and maintainability: Having separate configuration files for each virtual host allows for easier management and updates. You can modify or add new virtual hosts without affecting others, improving modularity and making it easier to maintain the configuration.
Granular control: With separate configuration files, you have more control over individual virtual hosts. You can define specific rules and settings for each host independently, tailoring the configuration to their unique requirements.
If you planning to use AEM as a Cloud Service or Cloud manager, its recommended to adapt to Adobe's recommended structure. It will assure your deployments don't fail any rule, also it becomes easier for support team to debug incase of any issues.
Modular structure of dispatcher
Having multiple virtual hosts within a single publish farm can be simpler to manage and maintain, especially if you have a smaller number of virtual hosts.
If you have specific security or performance requirements for each virtual host, separating them into individual farms can provide better isolation and control.
If you anticipate significant traffic or resource demands on specific virtual hosts, having separate farms can offer better scalability by allowing you to allocate resources independently.
Separating virtual hosts into individual farms can provide flexibility in terms of customization, caching strategies, or configuration options specific to each virtual host.
Ultimately, the choice depends on your specific needs, the complexity of your setup, and the expected growth of your environment. If your current approach of having multiple virtual hosts within a single farm is working well and meets your requirements, there may not be a need to change it.