OrderFlow Enterprise takes advantage of a range of techniques to ensure that it can scale easily and perform well for the most demanding environments.
OrderFlow is designed to work efficiently with relatively limited hardware resources. Even large warehouse operations can be comfortably supported within a simple architecture involving a single application server and a single database server.
For extremely high throughput environments, a clustered architecture may be necessary. OrderFlow Enterprise provides an additional set of features to support this capability.
The use of a clustered architecture is illustrated below.
The application above is fronted by a load balancing server, such as one provided by the cloud hosting infrastructure.
The OrderFlow application itself runs on a number of Application Server instances. The OrderFlow clustering module ensures that the application instances are properly synchronized. For example, changes made in App 1, may need to be broadcast to other nodes to ensure that this takes place properly.
The main persistent data store is the Transactional Database. Scalability and availability can be increased by replicating data to a secondary data store, to which read only operations and reporting queries can be directed. In addition, file data, can be stored separately from the main transactional data store.
OrderFlow can also take advantage of aggressive cacheing to improve throughput and performance.