Description of problem: A deployment with 25 assemblies each using the same image generates ~ 2277 requests to iwhd. The conductor/deployments/launch_time_params page takes about 14.4 seconds to load. How reproducible: always
Most of these operations are duplicates and should be cached in some way. There has been some talk about storing the metadata in a database. If these operations are then converted into SQL queries in rails, they would then be cached automatically. This seems like the most sensible way to approach these types of problems. Until then I've posted a patch that refactors the code to reduce the number of calls by reusing the objects retrieved from the warehouse. This reduces the number of operations to ~ 866 for 25 assemblies. Page load time is down to about 6.4 seconds. https://fedorahosted.org/pipermail/aeolus-devel/2012-February/008607.html
conductor commit e1441517424d8f755deca26f0e0367c704a65798
Change is in aeolus-conductor-0.8.0-22
Launched a deployment with 25 assemblies of same image .. Much less iwhd requests are raised as seen in iwhd log and it took around 6 -7 seconds to load the page after launch Verified in rpm -qa|grep aeolus aeolus-conductor-0.8.0-35.el6.noarch rubygem-aeolus-cli-0.3.0-10.el6.noarch aeolus-conductor-doc-0.8.0-35.el6.noarch rubygem-aeolus-image-0.3.0-9.el6.noarch aeolus-all-0.8.0-35.el6.noarch aeolus-conductor-daemons-0.8.0-35.el6.noarch aeolus-configure-2.5.0-15.el6.noarch