It is my understanding that even if you have specific bootstraps for each module, every bootstrap including the modules that you are not using will fire. This is because bootstraps are a "preparing" class. What you can do is create plugins, and test for what module is being used.
http://weierophinney.net/matthew/archives/234-Module-Bootstraps-in-Zend-Framework-Dos-and-Donts.html
Matthew Weier O'Phinney explains why it is done this way.
I would minimize the amount of bootstraping in modules, and provide plugins for any code that can be outsourced.
For instance, I wanted to have a certain module disable layouts upon execution, so instead of doing this in its boostrap, I created a plugin, and just test for if the module is being used.
class Custom_Module_Plugin_DisableLoadLayout extends Zend_Controller_Plugin_Abstract {
/*
* @param Zend_Controller_Request_Abstract $request
*/
public function preDispatch(Zend_Controller_Request_Abstract $request) {
$module = $request->getModuleName();
$layout = Zend_Layout::getMvcInstance();
if($module == 'load'){
$layout->disableLayout();
}
}
}
If your familiar with plugins you know that plugins fire upon every load via frontcontroller, so you could basically have one plugin, and test for the module name, and act accordingly.