G'day.

This series of patches introduces the `delayed_job` gem to the Puppet
Dashboard.  This adds background process workers to the product, allowing us
to defer long running, especially CPU intensive, work to a dedicated process
rather than running them as part of the HTTP request.

This is especially noticeable in report submission from the Puppet Master,
where we previously blocked the system until the report was fully committed to
the database.

Now we instead queue those, and import them in the background, allowing us to
give an almost instant response to the Puppet Master.  This should
substantially improve throughput during busy periods, allowing a single master
to service more requests with less resources.


The one drawback is that, right now, you have to *manually* fire up the
workers that run this stuff.  We would like to do something smarter, but it is
surprisingly hard to get auto-starting workers that run under Webrick,
Passenger, and the other top level tools for running Rails apps.

The documentation is up-to-date with this, but if you run a version of
Puppet Dashboard past this series getting into master you will need to make
that change for things to keep working.

We might will add smarter things again, but not quite yet...

Feedback welcome.

Daniel

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to