Too many plugins is BAD

Discussion in 'Server & Community Management' started by SuperSpyTX, Mar 4, 2013.

  1. SuperSpyTX

    Supporter

    What I've been seeing around here is that people run too many plugins. Some people have ~20 or ~30 plugins but those who run >40 plugins are at serious risk of bugs.

    It's not that running too many plugins causes load on the server, but it creates reliability on these plugins and can easily break your server without notice, creating more problems for yourself and your players. I just recently had a incident with disappearing entities in my survival world, and I found out it was GriefPrevention (easy fix, but not important).

    But sometimes, some people have to run all the plugins on their server, maybe because they have to satisfy their player's needs, or because there's a reason behind it that we're not aware of. Either way, here are some ways that I figure out problems with plugins on my server.
    • Plugin timings, well not timings in particular but the events being thrown. The first step to actually analyzing a problem is figuring out which event(s) in particular is causing which behavior (was the player trying to break a block? You could check for PlayerInteractEvent and BlockBreakEvent) Open up your timings data, CTRL+F for the events above, then open the plugin files up with a decompiler or look at the plugin's code on GitHub and analyze the code from there, looking at the listener responsible for it.
    • For those trickier issues that don't offer timings, a profiler will help you a lot. What I mean by trickier problems, is issues that end up crashing the entire server without knowing, or just random lag spikes. Now normally, you could just wait for the server to crash and get the thread dump printed by WatchDog, but I was not using Spigot at the time, so a profiler helped me out.
    • Sometimes, you have to add or modify the source code and analyze the plugin from there (e.g. Debug code, etc). I actually added some code to dump the class of the task being run into timings.
    And sometimes, it could be because of Spigot's recent changes (if you update to the latest dev every time). Then again, it's not always the reason.

    The reason why I didn't suggest NoLaggExamine is because timings usually offers the same data, AND it's actually built into CraftBukkit. The only downside/disadvantage is the graphs, but i'm not sure who really needs graphs anyways.

    Anyways, I thought I write up a thread about plugins.

    And I do get the fact not everybody is a programmer, but if you start reading the code and understand it, you will actually learn how to write Java. At least that's how I learned anyway.
     
    • Like Like x 1
    • Friendly Friendly x 1
    • Useful Useful x 1
  2. This thread. 1+. No, scratch that. 5+.

    But to add on, I look at it as, when an event happens, if the plugin has events registered, the server has to notify that plugin. Weather the plugin truly needs it or not. You have 20 plugins, the server handles events easy. But you have 50 plugins, the server is really stressing on things as basic as a walk event. So if you have one plugin that handles all the events at once, it makes your server much happier.

    But this is a good thread. I like it.
     
    • Agree Agree x 1
  3. 100% True. I have around 15-25 plugins on my servers.
     
  4. YoFuzzy3

    Supporter

    Nice read.

    Malo
    Mind sharing how the sexy looking banner in your signature is created? :D
     
  5. jeff142

    Benefactor

  6. I just have one server to run like a Hub server just with lots of worlds not servers and i have 55 plugins and 4GB ram total on 460MB is used up
     
  7. I have 23 plugins on my Hub. I could probably cut back.
     
  8. Huggle :D