50+ player servers. Hardware/software to make that possible

Discussion in 'Bukkit Discussion' started by Dorsilfin, Sep 19, 2011.

Thread Status:
Not open for further replies.
  1. Offline

    Dorsilfin

    Hello all,

    I am interested in finding out how to push my hardware to where Id like to be. right now i start creeping over 20 players and the console starts dropping overloaded messages at me.

    My server has started to increase in popularity and my number of players online is at an all time high.


    I am running a bukkit server with a few pluggins.

    My Plugin's

    Ichat
    MCMMO
    Essentials
    Heroicdeath
    Lockette
    permissions
    worldguard
    Iconomy
    Iconomychestshop
    Eco Monsters


    My Hardware


    AMD Phenom II X4 975 Black Edition Deneb 3.6GHz (OC'ed 4.0ghz)
    16Gigs CORSAIR XMS3 16GB (4 x 4GB) 240-Pin DDR3 SDRAM DDR3 1333
    HD - WD 250 gig 7200 rpm

    I am currently running the server in a 4 gig RAMDISK with a read/write speed of over 3000meg/s
    I have 10 gigs of ram dedicated to the Minecraft server and 2 left over for my system.
    I'm using an E2000 linksys router, to do all the port forwarding and its worked extremely well to this point.

    I am running windows 7 64 bit ultimate currently. What are those 100+ Player servers running?

    MY bukkit command line start is

    @echo off
    "%ProgramFiles%\Java\jre6\bin\java.exe" -server -Xmx10G -Xincgc -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalPacing -XX:parallelGCThreads=4 -XX:+AggressiveOpts -jar craftbukkit.jar

    pause


    Any suggestions where I can improve things?

    Many thanks!
     
  2. Offline

    sukosevato

    I'm pretty sure those 100+ servers are running linux. Because its a lot more lightweight as OS. I use it my self as well for my server.

    And 100+ servers have a faster CPU. Get a sandy bridge. Those are way faster.If the console is dropping overload messages at you it will probably be the CPU that can't keep up.
     
  3. Offline

    Dorsilfin

    is there a difference between an Intel quad at 4.0 ghz opposed to an AMD quad at 4.0ghz? Does the architecture of the chips lend one brand to be better for minecraft servers?
     
  4. Offline

    Theborg

    Not a real lot, but yea, I'd suggest putting on Linux as one way to make the hosting experiance more sufficient.
     
  5. Offline

    rmb938

    Get linux. Do not run a server on windows. Linux you will see a 20-40% increase
     
  6. rubbish (and yes, I prefer linux, too)
     
    Emiya Shirou likes this.
  7. Offline

    MechanID

    @Dorsilfin
    use linux, if you really mad and want all power and speed - use gentoo linux 64bit, but you need to find or hire someone to install and configure it, use ramdisk on linux, if you run webserver and database put them on other server, set up monitoring (use cacti or something else) with graphs for: memory, CPU, network, etc to find bottleneck if somerhing going wrong, and to adjust java commandline start options.
     
  8. Offline

    Phaedrus

    I use Windows Server 2008 R2 and it's hella fast. But it ain't free like Linux.

    The Core i7 is a wickedly fast CPU. And with hyperthreading it provides 8 threads instead of just 4. It's also much faster per clock cycle, so 4ghz vs 4ghz isn't an apples to apples comparison. But switching architechtures now would mean a pretty substantial investment on your part.

    1. Switching to a proper server OS would be a good start.
    2. Use the machine to only host the server and it's related functions. don't use it for every day stuff.
    3. Look into getting better network gear like your router and get a dedicated NIC, especially if you're using onboard.
    4. Upgrade your internet connection with an emphasis on uploads.
    5. Use MySQL if you aren't already as a database for your plugins.
    6. Experiment with tuning your garbage collection: http://forums.bukkit.org/threads/ho...24gb-dedicated-server.3967/page-2#post-184208
     
    Zothen likes this.
  9. Offline

    Dorsilfin


    solid info there. I might try rolling Windows server 2008, I can fumble around unbuntu but im no pro yet.

    This server box is dedicated to just minecraft right now.

    Ive got a Linksys E2000 router, its pretty solid all around.
    Ive got a Roswell 1gig dedicated nic card
    I installed a dedicated graphics card to take any load off the onboard gpu as well.

    friday my fiber line comes into my house and I go from 8 meg up to 35 megs up :D

    I use mysql for iconomy and logblock, nothing else can really use them.. tho I might move mmo over to that.. not sure how much load mmo could cause tho.

    always been an AMD fan boy, and the prices cant be matched.. Sure that intel I7 is retarded fast.. its also 5 times the cost of AMD's highend cpus right now. kinda a trade off for a hobby server i built yanno.

    Thanks for some ideas tho.. I think my OS will probably be the next step.

    Maybe one day when im rolling in the money and have some to throw around at hobbies I might go this pro route .. but for now ill keep on chugging as is and look for minor things i can try to do, in order to optimize things.

    thanks for the input tho

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 19, 2016
  10. Offline

    MechanID

    @Phaedrus pure gentoo linux with sshd syslogd and snmpd services consume only 8mbRAM and less then 1% CPU and linux can use Core i7 with hyperthreading

    so try to set up monitoring for your current server, and then follow Phaedrus suggestion to


    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 19, 2016
  11. Offline

    azamy250

    use linux that should improve 20% speeds
     
  12. Offline

    obscurehero

    something is wrong here.

    He has 10GB of memory, he's running the server off of a Ramdisk, and previously had 8mbps...there is no reason why his server should be getting overloaded at 20 some odd players. I know, i know, a server OS is less resource intensive and built for this task, however something really is off. He should be able to get more players than 20...

    Am I wrong?

    I can host about 15 with 5mbps up a C2D and 1.5GB of memory with very little lag, if any. I think he's got more than few legs up on me, and yet... He's not seeing those results to match. This can't be ALL OS.
     
    d3sl91 likes this.
  13. Offline

    MechanID

    to find what currently happens he need to set up monitoring for CPU, memory, network, harddisk I/O, etc
     
  14. Offline

    obscurehero

    agreed. I just thought I was the only one confused that he wasn't getting better performance.
     
  15. Offline

    d3sl91

    thats a good idea.... just get an idea of what is being maxed out. If you are pushing %80 + of your RAM and CPU, well, I would be surprised. Is it actually lag? or is it just "saying" it "cant keep up"
     
  16. Offline

    sukosevato

    Ditch the dedicated graphics card. Waste of electricity. You won't need it for a server. All you need is a cheap ass onboard card so you can see the desktop.

    And AMD their flag ship is a 1100T, 6 core processor. Which sells for about 160 euro where I live.

    Intel's flagship is the i7 2600k, which is about 230 euro, where I live.Might as well take the i5 2500k, which goes for 180 euro and is just about as fast for hosting.

    You're probably suggesting the i7 990X, which indeed is probably 4x the price of the AMD one. But that's an outdated processor and its slower then the i7 2600k. Especially when it comes down to minecraft server hosting since minecraft isn't multithreaded.

    Why an Intel is faster then a AMD? Let's look at it like this. I'm gonna take an i5 2500k as exapmle vs the 1100T.

    The i5 2500k runs at 3400 Mhz. Which means it can do 3400 x 10^6 calculations a second.So it has 4 cores, and every core can do that many calculations a second.

    The Amd 1100T runs at 3300 Mhz. Which means it can do 3300 x 10^6 calculations a second. But because it has 6 cores it can do 6 times that. And in theory it is 1,5x faster as the i5 2500k because it has 1,5x more cores and the clock speed 3300 Mhz vs 3400 Mhz is barely any difference.

    BUT, the amount of calculations a second a processor can do isn't the only thing that determines how fast it is. It also depends how big of a calculation a processor. Sure its fun if you can do a gazilion calculations a second, but if that's a gazilion times 1+1 its gonna get owned by a processor that does 10x less calculations a second but can do much more complex calculations like 953 x 286 ^3 or w/e.

    You get the point, in theory if we looked at only the clock speed the amd 1100T would be 1,5 faster. But because the i5 2500k can do much more complex calculations it is actually 1,5 faster then the 100T.

    And then there is the fact that minecraft isn't multithreaded. which means it is fun to have a 1000 core processor. But it will only use 1 core. Because it isn't programmed / isn't able to use more then 1 core. 1,5 core at most effectively. So the i5 2500k is roughly 1,5x faster then the amd 1100T when you look at rough performance. But because the i5 2500k has only 4 cores and the amd 6. And minecraft only uses 1 core it means the i5 2500k has an even higher advantage.

    An example:

    i5 2500k can complete a complex calculation in 10 seconds with 4 cores
    amd 1100T can do the same calculation in 15 seconds with 6 cores

    (as we discussed before, it is 1,5 slower because it can do less complex calculations every Hz)

    Now if an application uses only 1 core, like minecraft. And the same complex calculation has to be done.

    Then it will take 4 times longer with the i5 2500k, 40 seconds
    And 6 times longer with the 1100T, = 90 seconds

    Now it becomes quite clear that the i5 2500k is seriously much faster then the amd 6 core.

    the 1100T was 160 euro
    the i5 2500k is 180 euro

    the i5 is more then 2x faster when it comes to MC hosting.

    Is that little higher price worth the extra cost? Yes it is. As it stands now, AMD is getting their ass kicked by intel. Bulldozer which is the next generation of AMD processors will be launched in a couple of months and not until then will they be the best pick.

    And the i7 990X, which has 6 cores. Is about as fast as an i5 2500k which has 4 cores when you look at rough calculation time. But when a program doesn't use more then 1 core the i5 2500k is again 1,5 faster. Only if a application can use all 6 cores will the i7 990x be about as fast. But there are VERY few applications that are multithreaded that well. Only video editting and stuff like that really uses more cores. But for a consumer its not worth it. Especially not considering the 990X is 4x more expensive as the i5 2500k and also slower.

    Its because the i5 2500k is from the new generation processors and the i7 990x is still from the old generation.

    i7 990 = old generation high end platform
    i5 2500k = new generation mid end platform

    If you want the highend generation sandy bridges, then you're gonna have to wait till they release in Q4 this year. Then you will see 6 cores that have cores as fast as i5 2500k's and those will then be the fastest again by far.



    Hmmm.. Bit long, but hope this clears some stuff up as to why AMD absolutely isn't the best pick for a minecraft processor. Ooh and i type fast :p
     
    Tanite likes this.
  17. Offline

    Jobsti

    It's to simple, with some apps the AMD is faster (like x264 coding, Bad Comp. etc.), in some (more) Apps, the Intel is faster. (With ~same gHz).

    You have to look, whichs apps or games you are using, then choose your CPU.

    I use both, Intel and AMD.
    For my Server and ProTools-PC, in each case I use AMD, but 4-core. Desktop: AMD 6-core, Gaming PC: 3 @ 4-core
    Gaming PC No. 2 & 3 Notebooks and Measurement-PC, for each Intels.

    But I don't know if a Mc Server (or Java7) runs better on Intel or AMD ;)

    And I think, for my PT-pc, I need a dual 6-Core Opteron Machine, we'll see at the end of the year.

    Info:
    Today, my Server (44Plugins, 4 Worlds) has a slow Athlon II X4 @ 2,7gHz, with 18 Users, the cpu-load is 80-100%. Sometimes I get the CPU message in Console, but's lagfree.
    Tomorrow this machine gets an Phenom II X4 with 4gHz, I'm curious about...
    (Linux Ubuntu Server x64, java 6. Since today, Java7, let's see what happens with the load)
     
  18. i was able to run a 100 man server on this:
    i7 920, 12gb 1033 ram and 100mbit up/down.
    os: windows 7. and it wasnt dedicated to just minecraft.

    i could handle about 60/70 people without any problems (while running on my hd) and about 90 on my ramdisk. anymore and it started lagging a bit but not much like 0.5/ 1 sec delay.

    just a sidenote i was also using this as my regular pc playing games and watching video's etc
     
  19. Offline

    Dorsilfin


    Id love to know what ISP you had with a 100 meg down/up connection =)

    Do you recall anythings you had done to smooth the server out? Command line to start the server.

    What version of MC were you doing this on 1.5 1.6? recently?

    Thanks!

    What im seeing is around 1.5-2gigs of memory used when I have about 25 people online. I really dont know why I assign it 10 gigs.. I dont think that will ever truly be the problem.

    I dont have the affinity set on my process so maybe ill try that putting it all on 1 core, to see how far it pushes that one to get a feel of the CPU usage.

    Some users started reporting a bit of block lag. like destroy 4 in a row and the last one shows back up type deal. nothing major at this point, but I keep thinking somthing is wrong that I can push this system to 40 people.


    What I also thought of doing is making like an 8 gig ramdisk. and running linux in a Virtual machine all within that ram disk. would be interesting to see how that would fare lol..

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 19, 2016
  20. Offline

    sukosevato

    [​IMG]

    A dutch ISP. They sell this as a 100 / 100 connection. But you usually get about 85-90
     
  21. Offline

    pacmanjones

    I want to upgrade my server to increase performance, and now that I've accumulated a good sum in donations, I am trying to figure out how best to upgrade the server. I currently have:

    a 100/30M internet connection

    MB ASUS M4A88T-M AM3 R Motherboard

    AMD ATHLON II X4 630 2.8G AM3 % CPU

    Crucial 4GB 240-Pin DDR3 SDRAM DDR3 1333 (PC3 10600) Desktop Memory Model CT51264BA1339 RAM (x2 to make 8GB ram)

    and 2 500GB HDD harddrives


    I'm thinking about buying an i5 processor (considering how much CPU 1.8 uses), and some more RAM to switch the server to RAM disk. Would I need to buy a new motherboard for an i5 processor? How much RAM would I need to switch to RAM disk?
     
  22. my isp is xmsnet, which is a small provider that specializes in fiberglass ( located in holland)
    the version i was running was first 1.5 and then 1.6.
    furthermore i used mcmyadmin for managing the server and permissions but i dont recall doing anything special with the commandline, i did have a shitload of plugins though

    way back in 1.1 / 1.2 i used mcregion but that doesnt matter anymore since that is now integrated into minecraft
     
  23. Offline

    Dorsilfin

    thats awesome! I wish we had speeds like that in the US. my new ISP 9.23.11 this friday is the max I can buy which is a 35 down 35 up fiber connection through Verizon.. Sure I can go for a 100 meg down package but Im more concerned with the UP
     
  24. Offline

    strontkever

    if i want to have a faster connection i need to move :(
    adsl - 1mb/s upload max
     
  25. Offline

    d3sl91

    what kinda price tag to they place on that (in USD, if possible) - Paying $60/mo for 20down 3up
     
  26. Offline

    Median

    In Sweden it`s max 50 USD for 100/100.
     
  27. Offline

    vapid2323

    I kinda looked over this thread, and one thing looked missing or at leasted I missed it.

    Ditch the 7200 HD and get a SSD, nothing crazy big but something around 100GB should be good. With minecrafts high IOPS this will help quite a bit.

    Also for your internet speed, your not going to need over 30Mbps upload unless you have a server over 100+ players.
     
  28. Offline

    Median

    A ramdisk will just work better, no need for a SSD.
     
  29. Offline

    vapid2323

    Help me understand how a RAMdisk would be "better" you need to back that statement up.

    I understand ram is fast but I also understand the large downsides to ram. Corrupt data being a large factor, you can backup to disk all you want you still run a much higher % of corrupting your server data. Why risk all that when a SSD has none of those problems?

    When I need fast persistent storage, I use SSD.
    When I need fast volatile storage I use RAM.

    But at the end of the day, if you want persistent storage AND performance, you either buy BOTH a slow hard drive and fast RAM, or you buy a high performance SSD.

    In general the SSD is going to be cheaper than both the hard drive and RAM together.
     
  30. Offline

    Nibato

    Make a cron job to flush it to the disk every 5 minutes. If the server craps out somehow, you only lose 5 minutes worth of game time. A very, very small amount to pay for the performance of a ram drive. Since the game is running entirely off the ram drive itself, while you're flushing the world to disk it shouldn't bottleneck the game server.

    SSDs are a viable solution, no doubt, but they simply aren't necessary for this kind of situation.

    I've been using this exact same method for about 6 months now with 0 issues. Infact, I don't have to manually restore from backups as much when my power goes out and corrupts the world, since the ram drive rolls it back to when the last 5 minute flush occured.

    SSDs may be cheaper then ram or HDDs in the future, but they aren't right now.
     
Thread Status:
Not open for further replies.

Share This Page