Helios is a system for building asynchronous distributed job processing applications. Applications that need to process hundreds, thousands, even millions of small units of work in parallel can use the Helios system to distribute their workload across the multiple processes and servers that form a Helios collective. Helios may also be used to improve the user experience on websites. By utilizing the framework's APIs, potential timeout issues can be eliminated and response times decreased for larger tasks invoked in response to user input. The web server application can "fire and forget" to the background, immediately returning control to the user. Using Helios, simple Perl applications can be written to distribute massive workloads throughout the Helios collective while still retaining centralized management.
The Helios system consists of 2 parts:
- Helios - the core system framework installed with your application on the hosts that will actually perform work, and
- Helios::Panoptes - the web-based administration console that acts as the control center for a Helios collective of hosts.
Most users wanting to deploy a Helios collective will need both pieces: Helios is deployed with the application classes on hosts that actually perform work (the "worker hosts"), while Helios::Panoptes is deployed on a web server to monitor the work being performed.
You can download Helios and Helios::Panoptes distributions from CPAN or GitHub using the links to the right. Installation instructions for Debian/Ubuntu, Red Hat/CentOS, and other Unix-type operating systems are included in the main Helios distribution. You can also check the Helios GitHub wiki for more information.
Helios 2.60 Released!
Helios 2.60 is now available on CPAN and GitHub!
This release brings performance enhancements and new configuration options.
Major features include:
- Major changes to database connection handling. Helios now aggressively
caches database connections at the DBI layer and more properly handles
database connect/disconnect between daemon and worker processes. These
improvements provide significant performance increases with a reduced
number of open database connections. These increases are especially noticeable
with Oracle-based collectives, but collectives using MySQL should experience
significant improvements as well.
- A new modular configuration API. The Helios::Config module provides a
modular, customizable API to provide configuration information to Helios
applications. In addition, the new API's modularity allows scripts, utilities,
and other application pieces external to the user's Helios service easier
access to configuration information.
There are several other features and improvements as well. The full change log
is available
here.
Helios 2.60 is now the current stable release of the Helios framework. Despite
the significant changes under the hood, existing Helios applications should
experience no problems running with Helios 2.60. All current Helios users are
encouraged to upgrade to this version due to the major performance increases.
If you encounter bugs or problems, please feel free to report them via RT.
Helios 2.60 is open source software made available under a dual Artistic/GNU
GPL dual license (the same as Perl itself). If you have questions or want to
get involved with the Helios project, check out the Helios project on GitHub or
contact us via email at helios [at] logicalhelion.com or via Twitter.
Posted by lajandy on Thu, 15 Nov 2012
Helios 2.60 Release Candidate 3 is out!
Helios 2.52_4310 is the third release candidate for Helios 2.60. Changes since the last release candidate include a minor change to Helios::Config to prevent a subtle config parameter parsing bug. Read about the changes in this release and the entire 2.5x development cycle in the Change Log or download the distribution from CPAN.
Posted by lajandy on Fri, 26 Oct 2012
New Website!
Welcome one and all to the new website for the Helios job processing system!
Though Helios has been under development for many years, this is the first time
it has had a proper website outside of its CPAN and github pages. Hopefully
we can use this site as a single point of contact for all the Helios resources
in development on the web: the CPAN page, the github project, the wiki, etc.
Come back frequently, because even bigger things are coming soon!
Posted by lajandy on Fri, 26 Oct 2012