Hey all! I recently started checking out Scaleway, a cheap VPS provider that provides ARM v7 hardware. Anyway, they provide a “click-and-go” solution for spinning up a Minecraft server, which apparently is a MineOS Turnkey ISO.
Setup was really simple, but I did notice log lines like so pretty much as soon as a world was started:
[00:09:27] [Server thread/WARN]: Can't keep up! Did the system time change, or is the server overloaded? Running 2130ms behind, skipping 42 tick(s)
I decided to ignore it for now. My mistake, apparently, because I came back a little while ago to discover this in the logs:
[22:37:09] [Server Watchdog/FATAL]: A single server tick took 60.02 seconds (should be max 0.05)
This caused the watchdog thread to consider the server crashed and stop the process.
FWIW, here’s the specs that are provided for one Scaleway instance:
4 Dedicated ARM Cores
50GB SSD Disk
So what’s going on? Scaleway is in Paris, is this a latency thing? Or is it a memory issue? I have about 1.5 gigs max allocation for the application, which should be enough right? I’m sure ARM adds a wrench in the whole thing, but I’m a little surprised that the application crashed after only about 24 hours of running.
This is a server sided issue, possibly something related to the processing speed. You say the CPU arch is ARM, and ARM is for mobile devices (take android devices as an example). Although Java runs on all platforms/architectures, I don’t really think it’s as good for running java applications (with the exception of android itself and apps, being that that’s what they’re programed in). I’d recommend using an x86 based host. x86 based CPUs have more performance (tend to perform better+faster) while ARM is designed to save power, which generally reduces performance.
First question: how much memory, during normal usage, is available/free?
If you over-allocate to java, then the rest of the system may be starving for memory. This causes disk swapping which pretty much will suffocate any server. 1.5GB actually is pretty reasonable, but the java heap is only one part of the equation, there’s java overhead, system overhead, etc.
It may not be memory related, however–it could just be CPU. You may have 4 cores, but the Minecraft game loop only uses one, so depending on what the players in your game are doing, it could be the culprit–perhaps there’s too much chunk generation happening…too much redstone…too many entites…too many plugins.
There’s a lot of things that can affect whether the system can keep up, so I recommend you check out the top utility. This will pretty much hone in on what is going on with your system. If you’re able to take a screenshot of the top page when you get these “can’t keep up!” warnings, it’d give you a great idea of what’s actually slowing down your server.
I also had this problem, mostly when my Hard drive og CPU where under too much load. I solved it by editing (if needed adding) the property “max-tick-time” in the server.properties by setting it to a larger number. right now my server runs with 120000 in tick time, wich is rather much, but at least the servers don’t stop any more due to tick time out. It does mean however that you are in risk of experiencing lag instead…