System Scalability and High-Availability (VM environments only)#
Critical Manufacturing MES is designed for scalability and high-availability and is able to run in a single computer or in a very distributed server farm, as illustrated below (example for a traditional installation based on physical servers):
You can see a listing of the different scalability and high-availability options for each of the different tiers:
| Tier | Technology | Scalability and High Availability |
|---|---|---|
| Presentation Layer | HTML5 | The GUI runs entirely in the client, although the HTML pages must be served by a Web Server such as Internet Information Services (IIS) in Windows deployments, or nginx in containerized deployments. Better hardware provides better performance up to a certain point, upon which the client devices become the bottleneck typically due to memory concerns, above even CPU clock speed. Regarding high availability, a failure in a single client does not compromise the availability of other clients or of any other system component. |
| Application Layer | .NET | Containerized installations: Containerized installations are inherently scalable. Individual components can be scaled separately by spinning up additional instances of the respective component (scale out) or by reserving more resources to specific components (scale up). High availability is also ensured by the container orchestrator, which ensures the workload assigned to a failed node is automatically transferred to a healthy node (self-healing). Traditional installations: Using the integrated Critical Manufacturing MES Discovery Service or any other software or hardware-based mechanism, application server nodes can be added (scale out) and removed dynamically without system downtime. It also provides high availability. Adding more powerful hardware resources (scale up), such as adding more memory is also possible and beneficial for the application performance. |
| Persistency and Analytics Services | SQL Server | Microsoft Cluster Services (MSCS) or Microsoft Failover Clustering - provides high availability. Scaling is possible via scale up, by adding more powerful hardware. SQL Server Always On with Read-Only Replica allows read-only statements to hit the secondary database server. Database Distribution - Critical Manufacturing MES uses three databases: Online; Operational Data Store (ODS) and a Data Warehouse (DWH). The databases can be placed in three different SQL Server instances running in different servers to ensure load is distributed between the associated nodes. |
Table: System Scalability and High-Availability
