I'm interested in the development of freely licensed automated publishing systems, so of course I'm interested in Booktype, too. However, as Booktype seems to have a set of dependencies to resolve, I haven't even attempted to set it up (yet?). Additionally, I don't know any Python. Still, as XML based formats and freely licensed software are universal, any publishing system can be made compatible with other systems of this kind. Originally I started out with developing processing workflows for bible text XML formats (see here, here and a project description in German language) and later generalized the methods and tools in order to get the benefits of automatization for other texts as well. As I learned more about modern self-publishing, I started to wonder why authors/formatters waste their time with doing typesetting for both, print and e-book, separately by hand, just because today's writing tools, word processors and online processing systems are largely based upon DTP-like, direct formatting usage concepts instead of a semantical ones. Therefore I work on automated processing workflows with strong emphasis on semantic markup. Those workflows consist of various independent small tools, which get combined together (they could get re-arranged, too) and leave room for customization at or between each single processing step. Book project management, processing job management and system configuration isn't there yet, GUI only in part, but obviously those are features which one wants to have sooner or later. The processing tools are written in Java. Their use doesn't need to be restricted to offline, I've just started to set it up as an online service, where ideally online and offline version stay largely the same, except the extensions for online on top of it. You find some links about it here (be warned: still very primitive!).
So what I want to know, maybe you Booktype people can help me, is, how the online execution is managed for Booktype, especially under multi-user load. I guess it isn't a very good idea to do the processing live and instantaneously triggered by event execution from the web GUI, because this would prevent load balancing and might block access to files or other system resources, right? Do you use some kind of scheduling mechanism or even distributed computing?