Software review

Source Code for Biology and Medicine

, 7:8

First online:

Open Access This content is freely available online to anyone, anywhere at any time.

JobCenter: an open source, cross-platform, and distributed job queue management system optimized for scalability and versatility

  • Daniel JaschobAffiliated withDepartment of Biochemistry, University of Washington
  • , Michael RiffleAffiliated withDepartment of Biochemistry, University of WashingtonDepartment of Genome Sciences, University of Washington Email author 



Laboratories engaged in computational biology or bioinformatics frequently need to run lengthy, multistep, and user-driven computational jobs. Each job can tie up a computer for a few minutes to several days, and many laboratories lack the expertise or resources to build and maintain a dedicated computer cluster.


JobCenter is a client–server application and framework for job management and distributed job execution. The client and server components are both written in Java and are cross-platform and relatively easy to install. All communication with the server is client-driven, which allows worker nodes to run anywhere (even behind external firewalls or “in the cloud”) and provides inherent load balancing. Adding a worker node to the worker pool is as simple as dropping the JobCenter client files onto any computer and performing basic configuration, which provides tremendous ease-of-use, flexibility, and limitless horizontal scalability. Each worker installation may be independently configured, including the types of jobs it is able to run. Executed jobs may be written in any language and may include multistep workflows.


JobCenter is a versatile and scalable distributed job management system that allows laboratories to very efficiently distribute all computational work among available resources. JobCenter is freely available at http://​code.​google.​com/​p/​jobcenter/​.


Computing Bioinformatics Computational biology Job management Distributed Open-source Cross-platform Grid computing Job scheduler Batch processing