What is it?
Simply put, Spigot is it. Spigot is that "special sauce" used by many of the world's top Minecraft servers to ensure that they can cope with their huge player base and ensure the satisfaction of their players. Spigot works by reducing and eliminating many causes of lag, as well as adding in handy features and settings that help make your job of server administration easier. The end result is your server becomes a cut above the competition, and you no longer have to spend time tearing your hair out over players complaining of lag. It must also be added that Spigot is perfect for smaller servers too, especially due to features like cutting idle CPU usage, saving power and other resources when only a few or no players are online.
How does it work?
Believe it or not, Spigot is just a modification of CraftBukkit, just made more efficient. It is a huge collection of various tweaks to help increase performance, and make it more flexible as a server. Fortunately for you, this also means most CraftBukkit plugins are reverse-compatible with Spigot! Not only that, this project may also be the source of zero-day patches designed to fix critical issues before they are applied to the mainline CraftBukkit.
Please note that this list is incomplete and Spigot is constantly updated with over 100 unique features; just try it for yourself!
- TPS increases
- Optimized growth, decay and chunk ticking
- Automatic conversion between online and offline mode.
- Auto stack merging for items and experience orbs
- Chunk garbage collector to prevent chunk leaks
- Convert your offline mode server to online mode without losing player data
- Configurable values for many vanilla/Bukkit messages (e.g. whitelist, no permission)
- Disabling of random light updates
- Optimized anti x-ray (Orebfuscator)
- Efficient Netty networking engine
- Smart crash and hang detection / prevention
- Reverse compatibility with CraftBukkit plugins
- Entity activation and tracking ranges to ensure client-side and server-side resources are only used when needed
- Prevent server load caused by maps in item frames
- Automatic restarts upon a server crash
- Automatically stays up-to-date with the latest CraftBukkit changes
- Ability to disable TAB command complete
- Customization over what the console logs
- Fine control over growth rates, chunks, and ticks
- Optimized tick loop
- Memory-reducing nibble arrays
- More accurate benchmark timings reports
- Configurable chunk packet sending
- Threaded chunk compression
If your server is managed poorly, Spigot will have little to no benefit. Please ensure that you always use stable, up to date plugins and your server is not mismanaged, but taken care of.