The Sage X3 version 7 platform includes several components. Some of them are new and linked to the version 7 platform while others are required to support the version 6 technology used by the classic mode.
The following diagram illustrates all the servers that you can install in a complete Sage X3 implementation:
In the diagram:
All these servers are logical servers that can be deployed on a single server (especially for demo purposes). Usually, dedicated servers are used for database, search, and MongoDB. They can be virtualized based on the specifications of the corresponding vendors.
To focus on the main components of the platform, the schema can be summarized as follows:
A client can have one or several browser instances that connect to the version 7 web server (1). The node.js web server can have several instances and a load balancer is provided to handle a reasonable number of node.js instances (usually one per core on 1 to 5 servers). An external load balancer can also be used to distribute the http and https requests on several node servers.
MongoDB is able to run on clusters as well (2).
Lucene and Elasticsearch are also technologies built for the cloud, able index and search over millions of entries (3).
The standard databases used (SQL Server, Oracle) are highly scalable and able to run in distributed environments when necessary (4).
The server that runs the Sage X3 application code can be distributed on several servers (5).
If a large volume of data needs to be managed by MongoDB or Elasticsearch, these components can split the data across multiple shards. However, this is unlikely to be required in the ERP context.