Bukkit and Spigot servers can perform a timings report to find exactly which events and plugins are causing lag on your server.
If you are using Bukkit, we recommend temporarily switching to Spigot to use its /timings paste command. While Bukkit can perform a timings report, Bukkit does not have this command which makes quickly getting the timings report to a parser harder than it needs to be. If you're doing a timings report with Bukkit, you will need to use FTP to transfer the report from your server to your computer then submit it to the Bukkit Timings Viewer.
For more information, see Timings on Spigot's wiki.
Lowering the view distance can greatly improve performance. The view distance can be changed in the server.properties. We recommend setting the view distance to 6, as it will have the least noticeable difference to users while giving a large performance boost.
A view distance of 6 only requires the server to load approximately 144 chunks around players, versus 400 chunks with the view distance set at 10.
CPU intensive activities and plugins
CPU intensive plugins are often the cause of lag issues. Plugins that are known to cause lag include:
- World generation modification
- Anti X-Ray
Try disabling any plugins that you know or suspect might be monopolising your CPU usage. Similarly, some in-game activities are extremely CPU intensive:
- Generating a new map will use a lot of CPU, and even more so if you have a number of players moving into new areas at once.
- Large redstone contraptions can also use a lot of CPU time if left running in an infinite loop.
- Large groups of mobs or other entities
Broken, outdated, or misconfigured plugins
Broken, outdated or misconfigured plugins can use an extreme amount of CPU time, crash your server or even corrupt your map. The first step when locating broken plugins to look though your server.log file looking for any errors that have been logged.
Typically error messages in the log will be proceeded by a [SEVERE] tag. Some error messages will give more cogent advice on what's going wrong, while others will be more cryptic. You should first try looking for updates for any plugins that give error messages, or simply disable them.
Do not use the /reload command
Bukkit's /reload command is known to cause memory leaks and lag. Please avoid using it, and instead simply restart your server. For more detailed information on the /reload command, please consult this thread on the official bukkit forums:
Petition to remove the /reload command
For a large performance boost, users can select an optimized version of Craftbukkit, known as Spigot, within the control panel. Spigot can be used as a direct alternative to CraftBukkit.
More information regarding Spigot can be found on their website. Using Spigot is highly recommended for large servers.
Check your internet connection
Using other applications that heavily use your interenet connection will cause lag that is specific to you, and especially so if you already have a slow internet connection.
If you and only you are lagging, try closing any peer-to-peer file sharing applications, streaming video websites (ie YouTube or Twitch.tv), or other internet applications. Normal web surfing typically won't cause lag unless you have a very slow internet connection. Other users who share your internet connection can also cause you to lag if they are using bandwidth intensive applications.