Performance tuning your Sage X3 system: X3 Technology Stack

3 minute read time.

Updated: 03 August 2023

Back to Index

Please note this document and all other documents it links to are living documents so will evolve over time as new things are discovered, new functionality is provided, best practises adjusted and/or when I get time to add content; so please make sure you come back and visit this source document often.

Contents

Performance tuning your Sage X3 system: X3 Technology Stack

Technology Stack introduction

General information

General blogs, KB articles, etc.

Individual components

Technology Stack introduction

The Sage X3 technology components are an essential part of the X3 setup and tuning.  First I will discuss general aspects, then cover individual components in more detail via the links section below.

General information

System Architecture

Understanding which X3 Technology components are installed on which server for the instance under consideration is essential:

i.e. Syracuse, MongoDB, Elastic Search, Apache, Application Server, Process Server, SQL Server, Print Server, Management Console, New ADC or Classic Web Server

Ideally you will have an architecture diagram showing this information, along with network routes (bandwidth and types of network devices) between the different servers in a multi-node installation.  Also confirm if using Application Cluster, when using multiple runtimes.

System sizing

Understanding the system workload is essential to ensure the system is correctly sized to handle the load.  This exercise would normally have been completed at the time the system was being implemented, but it is important to keep reviewing the data volumes, users, etc. to confirm actual usage against the anticipated workload the system was sized for.

Although not a comprehensive list, some of the main considerations are:

  • Number of interactive users and number of sessions they are running
  • What other data feeds there are; such as external interfaces (inbound or outbound)
  • Master data volumes (Customer, Stock Items)
  • Transaction volumes (How many invoices, how many lines per invoice)
  • Pattern of data creation (maximum throughput required)
  • What sort of jobs are going through batch processing
  • What report processing is needed
  • Any other data extraction or usage (e.g. Sage provided or Third party external reporting tools)
  • an understanding of likely data growth over the next few years would also be useful
  • Although not directly related to performance as such, any high availability requirements will impact the required architecture. This topic is discussed in blog article "Index page: High Availability with Sage X3"

When considering users, their location and working hours need to be understood.  For example, if you have 100 users in UK, 50 on East coast USA and 50 on West coast USA you would need to size for 150 concurrent users, due to the overlapping working hours between UK and East Coast, as well as overlap of East and West coast users.  You also will probably have normal working hours from something like 0700 GMT to account for earliest UK interactive user, until 0300 GMT to account for the latest working West coast interactive user.    Intensive batch jobs could therefore potentially be scheduled to run in the time window from 0300 GMT until 0700 GMT in order to not impact interactive users.

Transaction volume considerations would be not only (for example) the number of Purchase Invoices in total, but also how many lines per Invoice both on average and maximum.  For stock transactions, whether serial numbers and/or lots are being used, how many sites all need to be considered.  More generally the number of legislations can potentially impact disk space and data size requirements.

If you need specific help when undertaking a sizing exercise, Sage’s Center of Excellence (COEX) team would certainly be able to assist.

General blogs, KB articles, etc.

KB: How to troubleshoot slow performance for Sage X3 (A little out of date, but still useful)

Individual components

To look at the individual components in more detail, please follow the links below:

Technology component

Last Updated

4.1: Syracuse

05 October 2022

4.2: MongoDB

05 October 2022

4.3: ElasticSearch

05 October 2022

4.4: Runtime

05 October 2022

4.5: Print Server

18 October 2022

4.6: Apache

18 October 2022

4.7: X3 Console

18 October 2022

4.8: X3 Services

(Content to follow)

Back to Index