Enterprise edition
Introduction
This document describes the main characteristics of Q-flow’s Enterprise version. It also analyzes the main distinctions between this version and the standard version, describes the differences in their features and various scenarios in which the use of the Enterprise version is recommended.
For information regarding the installation and management procedures of the Enterprise version, see the Q-flow Installation and Configuration manual
What is Q-flow Enterprise Edition?
Q-flow’s Enterprise version was developed with the goal of providing the highest levels of failure tolerance and scalability.
The first objective of this version was to provide Q-flow’s business processes engine with a higher software and hardware failure tolerance.
Each one of the execution services acts as a supervising agent, which allows engines to mutually control each other, thus ensuring the system’s capacity and its correct functioning.
The second design objective of Q-flow’s Enterprise version was to provide the engine with a higher degree of scalability.
Q-flow’s execution services allow distributing workload in a balanced manner among different servers, thus providing greater processing capacity and ensuring fault tolerance, both for software and hardware.
Q-flow’s standard version already makes full use of the local resources of the server in which it resides. The Enterprise version allows you to overcome the barrier of a single server to get better execution times and to handle greater workloads by using resources in multiple servers and allowing the use of server farms.
Use scenarios
The typical scenarios for the use of the Enterprise version are those in which high availability is needed for the system (24x7), or when there is a need for intense processing.
The typical use scenarios are:
Implementations that need to be available 24x7
Installations in which maximizing performance is desired, by using horizontal scaling to distribute the workload between multiple servers.
Specification
The main attributes improved by the Enterprise Edition engine are:
Availability (failure tolerance)
Horizontal scalability (possibility of load distribution)
Monitoring (services monitor each other in such a way that if one fails, the other takes its job).
Q-flow achieves optimal utilization of a real multiprocessor system (not hyper-threading). It also has the ability to take full advantage of 64-bit processors (both the standard and Enterprise versions).
The Enterprise version takes this multiprocessing capacity further by allowing multiple servers to balance the processing load and the processing of different business flows in multiple servers simultaneously. The ability to use multiple processing servers does not require the implementation and use of a Windows cluster.
The standard version of Q-flow permits clustering by using a Windows cluster with Active/Passive settings, enabling the management of multiple nodes to provide failure tolerance and ensure the availability of the application service by service. The Enterprise version uses an Active/Active configuration and does not require using Windows cluster. This way, it does not rely on the operating system, but on the application itself, in order to guarantee the availability of services.
Deployment
The following figure presents a Q-flow’s Enterprise Edition deployment diagram.