ServiceDesk Plus is supported on the following operating systems:
Windows 2025, 2022, 2019
Debian 12, 11
RHEL 9, 8, 7
Ubuntu 22, 20
Ubuntu 24.04 Pro
This list will be updated regularly. Note that the operating systems are supported for both PostgreSQL and MSSQL.
Azure VM (Windows 2019) with Azure SQL is also supported to run ServiceDesk Plus.
Below-mentioned are the minimum requirements of memory and database based on inbound requests per day. You may require more RAM space and high-end processors depending upon incoming requests and logged in technicians, simultaneous access load, and other applications' load installed in the server.
|
Inbound Requests Per Day & Technicians Count |
Hard Disk & RAM |
Database |
Processor |
|
|
500 GB & 12 GB |
Bundled PGSQL |
2.0 GHz 8 cores Entry-level server-grade processor E.g |
|
|
1 TB & 16 GB |
Bundled PGSQL |
2.4 GHz 12 cores Server Grade Processor E.g |
|
|
2 TB & 24 GB |
Bundled PGSQL |
3.0 GHz 16 cores 30MB L3 Cache High Server Grade Processor |
For large enterprises handling more than 10,000 requests per day, it is recommended to use a dedicated, server-grade machine for running the database. Ensure that the machine meets the specifications mentioned in External MSSQL or External PostgreSQL.
ServiceDesk Plus uses Endpoint Central (formerly Desktop Central) agents for scanning. The Endpoint Central (formerly Desktop Central) agent is tightly coupled with the Endpoint Central (formerly Desktop Central) server, and therefore, Endpoint Centra (formerly Desktop Central)l itself will be downloaded and silently installed in the same folder location as ServiceDesk Plus/AssetExplorer. Endpoint Central can be installed only on a Windows machine. If ServiceDesk Plus/AssetExplorer is installed on a Linux machine, then Endpoint Central has to be installed manually on another Windows machine and integrated with ServiceDesk Plus/AssetExplorer under Admin >> Integrations >> Endpoint Central (formerly Desktop Central).
As Endpoint Central (formerly Desktop Central) is installed within the ServiceDesk Plus folder, a maximum of 1 GB of free space is required.
If Endpoint Central (formerly Desktop Central) is purchased separately, please refer here for detailed hardware requirements based on the number of assets purchased.
Refer to the below link for more details on the Endpoint Central (formerly Desktop Central) agent.
Endpoint Central (formerly Desktop Central) Agent in ServiceDesk Plus
The following is a list of supported browsers. We recommend you update to the latest version of whichever browser you are using for better performance and security.
Mozilla Firefox
Google Chrome
Microsoft Edge
Zoho Ulaa
The query optimizer uses table statistics to create query plans. To ensure optimal performance of query plans, table statistics must be updated regularly. To avoid performance issues, schedule database maintenance during non-operational hours at least once a week.
1. Postgres: REINDEX and VACUUM ANALYZE
Regular database maintenance is crucial to prevent and mitigate corruption issues. The REINDEX utility rebuilds indices, making them more consistent and removes any fragmentation in the database. The VACUUM utility reclaims storage occupied by dead tuples and updates statistics for the query planner to optimise performance. It also helps maintain database health by ensuring visibility map accuracy for efficient data access.
Shut down the application.
Go to [SDP_Home]/bin.
Execute the DBMaintenance.sh (in Linux machines) or DBMaintenance.bat (in Windows) script.
2. SQL Server: REBUILD, REORGANIZE, and updatestats
Rebuild drops and recreates an index, fully removing fragmentation, reclaiming space, and updating statistics with a full scan. Reorganize incrementally de-fragments the index, making it less resource-intensive. sp_updatestats updates statistics for all user-defined tables in the current database where data has changed, helping the query optimizer make better execution plans towards query performance.
Enable Maintenance Schedule.
Select a preferred frequency.
Set a starting date, along with a preferred time.
If your ServiceDesk Plus runs on an MSSQL setup, then make sure to host the database server in a separate machine under the same network as the application server. The DB server machine configuration solely depends on the number of databases configured and usage. Please consult with your DBA or Microsoft MSSQL support for system requirements.
Supported MSSQL Versions: 2016, 2017, 2019, and 2022.
Mentioned below are the minimum requirements to run ServiceDesk Plus on an MSSQL setup. This requirement is applicable only to the ServiceDesk Plus-related database.
|
Processor |
RAM |
Hard Disk |
|
3.0 GHz 30MB L3 Cache 10 cores |
64 GB |
1TB |
For optimum usage of MSSQL Database,
Enable Read Committed Snapshot Isolation (RCSI).
Configure File Autogrowth.
Enable database maintenance schedule. To enable the database maintenance schedule,
In non-ESM setups, go to Admin > General Settings > Performance Settings.
In ESM setups, go to ESM Directory > Performance Settings. Know more.
Configure Max degrees of parallelism (MAXDOP) and cost threshold for parallelism (CTFP) values in the MSSQL server. We recommend setting the value as 2 for MAXDOP and 50 for CTFP to prevent query resource congestion and execute queries faster.
Enable VIEW_SERVER_STATE permission for the DB login user connected with ServiceDesk Plus. This permission is required to log query-related information during performance issues.
Enable the sp_whoIsActive script in your database. This helps in capturing critical information about queries.
We recommend allocating 70% of the total memory of the SQL server machine to the SQL server instance connected with the SDP database to prevent query congestion and allow sufficient free space for the operating system.
To learn more about MSSQL best practices, click here.
All MSSQL databases usually have lock issues, which may affect an application’s optimal performance. To avoid such performance issues in ServiceDesk Plus, enable the read committed snapshot isolation (RCSI) by following these steps:
USE master
GO
ALTER DATABASE <db_name> SET OFFLINE WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE <db_name> SET READ_COMMITTED_SNAPSHOT ON WITH ROLLBACK IMMEDIATE
GO
USE master
GO
ALTER DATABASE <db_name> SET ONLINE
GO
Check if you have enabled RCSI successfully by running the following query
SELECT is_read_committed_snapshot_on FROM sys.databases WHERE [name] = '<db_name>'
You can now start the application. For more information on MSSQL databases and RSCI, go here.
Benefits of enabling the MSSQL Snapshot Mode
Simultaneous user-querying of the database will be possible without any delay or disruption (although the load on the application might exceed the usual limits).
User querying records will be maintained in a separate tempdb, which will not be affected by other user queries occurring in parallel or subsequently.
Database tables will be updated only after a transaction reaches completion.
We strongly recommend that you have an initial database capacity of at least 5GB and extend it periodically in advance by monitoring the current database file size to avoid an auto-growth event being triggered unnecessarily. This will ensure optimum application performance and smooth data processing.
File Autogrowth for database files can be configured as well. To learn more, click here.
Creating Database
Run the following query to create a database:

Extending Database Size
Find the current database size by running the query below

Run the following query to add 5 GB to the current database size

Default autogrowth settings in the SQL Server engine may lead to disk fragmentation and performance issues. These values are set at 1 MB and 10 percent for Data File and Log File, respectively. We recommend that you configure these as fixed values and not in percentage.
To ensure optimum application performance, we strongly recommend that the Data File and Log File autogrowth values are configured as 256 MB and 128 MB, respectively.
Follow these steps to configure File Autogrowth
Log in to SQL Management studio and run the following query:
USE <db_name>
EXEC sp_helpfileGO

If the configured growth values for Data (.mdf) and Log (.ldf) files are less than the recommended values, run the following query:
Use Master
GOALTER DATABASE <db_name>MODIFY FILE ( NAME = N'<db_name>', FILEGROWTH = 256MB )GOALTER DATABASE <db_name>MODIFY FILE (NAME = N'<db_name>_log', FILEGROWTH = 128MB )GOMaximum Degree of Parallelism (MAXDOP) is a setting in SQL server that limits the number of processors (or cores) used in parallel plan execution. It is used to control the maximum number of threads used to execute a single task or query.
In SQL server, configuring the MAXDOP setting is crucial for controlling the number of processor threads used for query execution. This setting helps to balance the load and ensures optimal use of system resources.
The ideal value for MAXDOP should generally be set to the number of online schedulers per node. A general recommendation is to set MAXDOP to 2, especially in environments where there is a need to balance parallel processing with overall system performance.
You can set MAXDOP at the server level or database level.
Queries to configure MAXDOP at server level
EXEC sp_configure 'show advanced options', 1; GO RECONFIGURE WITH OVERRIDE; GO EXEC sp_configure 'max degree of parallelism', 2; GO RECONFIGURE WITH OVERRIDE; GO
Queries to configure MAXDOP at database level
USE [YourDatabaseName]GOALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 2;GOCTFP is a configuration option in SQL server that specifies the threshold at which SQL server considers using parallel plans for query execution.
The default value for CTPF is 5, which is generally considered too low for modern hardware. We suggest setting CTPF to 50, which is a practical threshold for implementing parallelism, considering the capabilities of modern hardware.
Setting CTPF
Execute the following query to set CTPF at the SQL server level.
EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'cost threshold for parallelism', 50; -- Change the value to your recommended settingRECONFIGURE;

For SQL Server, there is a free script called sp_whoIsActive. This script generates the currently running queries / open transactions etc and is very useful to analyse performance issues.
The license of this script does not allow us to bundle this along with our product. But we can download and install it in the SDP database.
How to install
1. Open SQL server studio and connect to SDP database.
2. Download the latest version of the script and copy/paste the content in SQL server studio query editor and execute it once.
3. To check if it is installed correctly, run
and check if you get the results.
Once this is installed, the auto performance logs collection patch will automatically generate sp_whoIsActive results whenever performance issue occurs.
View server state permission is required for the DB user configured for SDP to fetch query related information from the ServiceDesk Plus database.
To grant this permission, login as admin user in SQL server and right-click on the SQL server instance name, go to properties > Permissions, and add View server state permissions for the SDP DB user login. Alternatively, this can be done using the query mentioned below.
USE master
GO
GRANT VIEW SERVER STATE TO <SDPLogin>
GOAny antivirus software, such as Symantec, running on the same system as ServiceDesk Plus can affect the application's performance. Therefore, to ensure application performance, exempt the following items from antivirus scanning:
pgsql.exe process and PostgreSQL folder for the PGSQL database
Log folders for both MSSQL and PGSQL databases