On 07/18/2011 09:57 AM, Matt Wagner wrote:
On Fri, Jul 15, 2011 at 05:25:03PM -0400, Hugh Brock wrote:
> Mark had the very interesting idea of conceptually separating the
> Aeolus components into discrete projects, each responsible for its own
> existence and usefulness. Obviously in the short term this will be a
> conceptual separation only, but I'd like to know what folks think of
> the idea of actually splitting the projects up this way at some time
> in the future.
Conceptually and perhaps behind-the-scenes, I like the idea of having
various components that interact.
Speaking practically, though, it already drives me crazy that we have
various bits and pieces that don't necessarily fit together perfectly.
We have components written in Ruby, Python, and C. Sometimes they
interact over REST APIs, other times they use QMF, and sometimes they
just directly modify each others' databases. (Although hopefully not so
much of that last one these days.)
To give one example of where this is a problem, our interactions with
Warehouse via API can be really slow, because we end up issuing a ton of
queries to get what we need. (Although this problem is far worse in
tests than in actual usage by our app, so it's not a serious problem for
now.)
As for the chattiness, on the Candlepin side we ended up creating higher
level "Info" resources. This helped to cut down on the data being passed
the wire. As for QMF/REST.. I would suggest we pick one. But, REST does
not give a good "scan" api.
-- bk