General performance tips
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.
When the server uses excessive resources
If you think your server is overusing resources in your system, consider checking these options:
- Enable multi-threaded garbage collection
- Optimize MySQL for speed
- SPAM block
- SMS and Email quota
- Watchdog service
- Reporting quota exceeded
- Limit the execution of Reportis on demand
Avoid Internet Explorer
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. Edge is an improvement over IE, but we still recommend to keep to the latter.
Only map the inputs you need
In the Device Mapper, mapping inputs you do not use, consumes disk space and CPU for no use.
Reporting best practises
Reporting is a common resource that you or your customers will use in the system. Before setting them up or start any customization, make sure that you follow the Reporting Best Practices
Schedule email reports
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 via email, follow this guide.
Change your GPS tracker update rates
Do not set the update rates to a higher value than you actually need. To know more, read this guide regarding track filters.
Set Event Rules for reporting only
If you setup your Event Rules to be used in reporting only, you'll be saving a lot of resources in your system. This is useful if you don't need live events and only will check them later in a report.
To do so, follow these steps:
In Step 1. of the Event Rules Wizard you can specify if the event rule will be used live (in real time). You should set Enabled to No for all event rules you only use for reports.
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.
Tracker offline reports instead of live events
If you are using the Offline expression feature to get a notification when a device is offline, consider changing this to having a report emailed to the user daily which lists all off line incidents.
To achieve this, follow this guide.
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.
How to restrict roles here.
Give users rights to see specific reports here.
Avoid too many live 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.
You can also try to limit the number of generated alerts by setting a delay, making the rule less sensitive.
Verify which Event Rules consume most resources using the ProfilerLog
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
Control email and SMS usage
Spam block prevents a faulty Event Rule to send too many emails or SMS messages to one single recipient. Learn how to use it here.
You can also set an SMS and/or Email Quota per application. Read more about this here.
Enable multi-threaded garbage collection
If you have a multi-core on-site server you can apply the below settings to improve performance. Read how to set it up here.
How to not run out of disk space.
WatchDog service: get an email or SMS when something is wrong with the service.
Backup and restore GpsGate Server
Database replication is not supported.