++ed by:

2 non-PAUSE users.

Andrew Johnson
and 1 contributors

Changes for version 2.60

  • -Significant changes to Helios database connection handling, including a specialized Data::ObjectDriver class and TheSchwartz extensions. Helios now aggressively caches database connections at the DBI layer and uses DBI features to properly handle database connect/disconnect between daemon and worker processes. These improvements result in significant performance increases, especially when using Oracle as a collective database. One user's application experienced job throughput increases of ~70%. MySQL collectives should also experience speed increases and a reduced number of open connections. -NEW Helios::Config modular configuration API. Similar to Helios::Job and Helios::Logger, Helios::Config defines the basic Helios configuration API while also serving as a base class to build custom configuration modules for Helios applications. To define a custom configuration API for a Helios application, specify a ConfigClass() method in your Helios::Service subclass. Auxiliary application pieces such as scripts and cronjobs can use Helios::Config to get the application's configuration without needing to instantiate the application class and calling the prep() method as in the past. Helios::Config makes the Helios configuration API more robust, modular, and flexible. See the Helios::Config POD for more details. NOTE: Helios::Service->getConfigFrom*() methods are now deprecated in favor of Helios::Config->parseConfig(). The prep() method uses Helios::Config and will continue to be supported. -NEW Helios exception class for configuration errors: Helios::Error::ConfigError. -NEW WORKER_MAX_TTL_WAIT_INTERVAL parameter to fine-tune use of WORKER_MAX_TTL with specific applications. -NEW WORKER_BLITZ_FACTOR configuration parameter to launch more workers sooner. -NEW configuration parameter documentation. All Helios out-of-box configuration parameters are now defined in a section of the Helios::Config POD. For more information about the new configuration parameters or any others, check the Helios::Config POD! -Helios::Service->dbConnect() has been updated to work with the new database connection caching scheme and to better support DBI options. -Bundle::Helios::Generic has been changed to Bundle::Helios and can be used to install Helios prerequisite modules with generic Perl installs. Bundle::Helios::RedHat was dropped in 2.41. See the INSTALL.* files in the main distribution directory to determine the right type of install method for your environment. -Improved module loading code. -Removal of most instances of Error module's try {} catch {} blocks in favor of Perl generic eval {} or do {}. -More tests. -Updated INSTALL.* files for generic Perl and CPAN installs and Red Hat/CentOS 6.x. BSD, Mac OS X, and other *nix should use the generic install instructions. (Debian and Ubuntu based instructions continue to be the quickest and easiest. Thank you Debian for your excellent Perl and CPAN packaging!)
Show More


  • Helios - a distributed job processing system
  • Helios::Tutorial - a tutorial for getting started with Helios
  • helios.pl - Launch a daemon to service jobs in the Helios job processing system
  • helios_job_submit.pl - Submit a job to the Helios job processing system from the cmd line
  • helios_log_clean.pl - Clean old log and history entries from the Helios database
  • submitJob.pl - CGI script to receive jobs for Helios via HTTP POST