Page 1 of 1

TIPS: Improve GpsGate Server performance!

Posted: Mon Sep 10, 2012 3:40 pm
by johan
Note: for an updated version of this and other articles, we recommend you to check our knowledge base here

How to optimize your GpsGate Server performance and user experience!

The first signs of that you have performance problems on your server is that the daily ErrorLog is full of "Waiting for a free connection timed out." messages. If you have a few now and then it is no harm, but if you have a constant stream you need to do something about it. Here is a list of things that will make your server run faster. Tips on how to improve the user experience are also included. Improved performance and user experience often go hand in hand!

Keep your server up to date. We constantly include new features, make optimizations and removes problems. By keeping your server up to date you will avoid running in to problems we have already solved. And you will have the best possible user experience.

1. Login to SiteAdmin
2. Go to "Plugins" (top menu)
3. Update any plugin listed as "red".

When your server is up to date, all your plugins are "green" under SiteAdmin -> Plugins.

Alerts when server uses excessive resources

Enable multi-threaded garbage collection

Optimize MySQL for speed

Avoid Internet Explorer. Microsoft makes a lot of great software, but not a great browser :-) GpsGate works using IE, but it is hard to avoid the fact that it is a very, very slow browser. For the best possible user experience it is recommend to use Firefox or Chrome. GpsGate will continue to support IE, but it is not the browser for the best user experience. If you "must" use IE, use IE9 or later.

Only map the inputs you need in the Device Mapper. Mapping inputs you do not use, consumes disk space and CPU for no use.

Follow the Reporting Best Practices

Email reports instead of displaying them in the browser. Report data needs to be processed before a user can view a report. GpsGate process report data every night, which means that reports displayed for yesterday and earlier are fast. But to display a report for today requires data to be processed first. This can sometimes cause an annoying delay for the user.

Often it is a better approach to setup report to be emailed daily, weekly or monthly to the user. In this way the user always gets the right report at in a comfortable way. To setup reports to be emailed saves server resources, and gives a better user experience!

Here is how to setup reports to be emailed:

GPS tracker update rates. Do not set the update rates to a higher value than you actually need. If you setup the trackers to send a report more often than once every 60 seconds it is important that you read this about best practices for track recorders here:

Disable Event Rules Used for reporting only. In Step 1. of the Event Rules Wizard you can specify if the event rule will be used live (in real time), or only for v3.0 reports. You should set Enabled for all event rules you only use for reports to "No".

Follow those steps:
1. Select Admin -> Event Rules from VehicleTracker menu.
2. Click on Event Rule to change.
3. Set Enabled to "No" in step 1.
4. Save.

The Event Rule will now be marked with a red icon in the list. It will no longer be executed live, and can only be used in reports.

Use the "Offline reports" instead of "live offline events". If you are using the "Off line expression" to get a notification when a device is off line, for example an email or SMS, consider changing this to having a report emailed to the user daily which lists all off line incidents.

Here is how to do it:

The live off line event rules consumes a lot of CPU and database resources. Using reports requires much less resources. The report also have the benefit of just getting one email per day which gives a summary you can take action on.

Keep tight control over user privileges. One common way of get your server overloaded is to give inexperienced user access to creating reports and event rules. They typically create too many.

Here is a guide on how to restrict Roles: the privilege name of editing event rules is _EditEventRules

Give users rights to see specific reports

Create Application Templates, this will make it possible for you to create a new application for a new customer with a specific configuration in minutes. More info:

Avoid to many speeding alarms. Live event rules, in particular those which creates a lot of events, takes a lot of server resources.

If you for example have too many email alerts it often makes sense to setup an event report instead to be emailed to the user daily. For example EV1000 or EV1001

Or try to limit the number of generated alerts by putting in a delay, making the rule less sensitive. Here is how:

Use Address column If you use an Event Rule to display street addresses in the Vehicle List you should remove that event rule and replace it with the new Address column feature. More info here:

If you use the old "Event Rule" method, you will typically get "Waiting for a free connection timed out." messages. In particular if your geocoder provider is slow.

Check which event rules consumes most resources. In the ProfilerLog you find under C:\GpsGateServer\ProfilerLog one new log file is created each day which writes down performance statistics about the server. There is a % which tells you how much resources an individual feature or operation consumes. You can for example see which live event rule in which applicaiton is a performance eater.

You also find a list under "CommandNotifier" which users receives most email and SMS notifications. If there are to many you might want to switch to an event report, or make the event rule less sensitive, see example about "Avoid to many speeding alarms" above.

Make sure the LogFiles plugin is installed and up to date.

Control email and SMS usage

Spam block prevents a faulty Event Rule to send too many emails or SMS messages to one single recipient.

SMS & Email Quota per application.

Enable multi-threaded garbage collection

Server maintenance

How to not run out of disk space

Use the WatchDog service, Get an email or SMS when something is wrong with the service.

Backup and restore GpsGate Server

Hardware requirements

Database replication is not supported.

Control peek loads. If you have a large server with more than 4 cores (CPU cores). Take a look under "Control peak loads" here:

And set the value MaxDatabaseConnections to the number of cores you have on your server.

If you installed your server Jan 2011 or earlier

Migrate from using v2.3 reports to using v3.0 reports. The older v2.3 reports are slow and eats up server resources. If you use 2.3 reports on your server the user interface will sometimes be unresponsive, and you can get a "yellow error message" back when the web server times out. 2.3 reports also makes NMEA Service slower.

Please follow this guide on how to migrate to using only 3.0 reports:

Make sure you have the LogFiles plugin installed:


GpsGate Support

RE: TIPS: Improve GpsGate Server performance!

Posted: Fri Sep 28, 2012 11:41 am
by yabbi
{bookmarked} Thanks Johan.

RE: TIPS: Improve GpsGate Server performance!

Posted: Sun Oct 07, 2012 8:46 pm
by johan
Added new guide. Best practice for track recorder.


GpsGate Support

RE: TIPS: Improve GpsGate Server performance!

Posted: Thu Nov 07, 2013 7:10 pm
by johan
Added new guide for Reporting Best Practices
Best practices


GpsGate Support

RE: TIPS: Improve GpsGate Server performance!

Posted: Mon Nov 17, 2014 5:46 pm
by johan
Added new guides:

Control email and SMS usage

Spam block prevents a faulty Event Rule to send too many emails or SMS messages to one single recipient. topic.asp?TOPIC_ID=17233

SMS & Email Quota per application. topic.asp?TOPIC_ID=17600


GpsGate Support

RE: TIPS: Improve GpsGate Server performance!

Posted: Wed Apr 08, 2015 1:32 pm
by johan
Added new guides

Alerts when server uses excessive resources topic.asp?TOPIC_ID=17693

Optimize MySQL for speed topic.asp?TOPIC_ID=17979


GpsGate Support

Re: TIPS: Improve GpsGate Server performance!

Posted: Thu Apr 27, 2017 4:14 pm
by johan
Added new guides

Enable multi-threaded garbage collection viewtopic.php?f=29&t=19703&p=67806