DevelopmentRoadmap

lajandy edited this page Aug 1, 2014 · 28 revisions

Helios Development Roadmap

Below are the features currently planned for current and future Helios development cycles. Want to contribute? Grab the code and contact us! (email: helios at logicalhelion dotorg)

2.9x Development Series - Target Release Date: Autumn 2014

Helios Foundation Classes (HeFC):

  • Helios::JobHistory
  • Helios::Log
  • Helios::Job
  • Helios::ServiceRegistry

"The Divorce" - separation of services and workers - will allow more flexibility between services and the underlying code that runs them

  • Helios::TS::Worker - new worker code that runs Helios services that are not subclasses of it
  • Helios::Service - changed to be its own base class, instead of a subclass of TheSchwartz
  • TBD

Database Changes:

  • Official PostgreSQL support
  • Database schema changes to support HeFC enhancements

Other:

  • Documentation Updates
  • Expanded tutorials and reference material
  • New install instructions for Ubuntu 14.04 LTS
  • ??

Future Releases?

  • Modular helios.pl - allow clean extensions w/o having to directly modify helios.pl.
  • Use UIDs instead of sequence numbers from the database as jobids. This will reduce system reliance on the vagaries of the underlying RDBMS, and potentially increase performance. May also potentially allow distributed job queuing across multiple databases (which TheSchwartz supports, but Helios doesn't, largely because of this issue).
  • Enhanced JSON support, potentially for job argument specification (replacing XML-like syntax) and/or configuration information. This could allow for more complex job arguments (especially as using XML::Simple is weak at parsing complex XML) and potentially allow for tighter integration with JavaScript applications. The basic technology has been or will soon be added in the Helios 2.9x development series via the new extensible Helios::Job base class.
  • MIN_WORKERS functionality - specify a minimum number of workers always running, even if there are no jobs for the service in the job queue.
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.