Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Linode vs. Digital Ocean: WHY CAN'T I ADD CORES?
9 points by decentrality on March 6, 2014 | hide | past | favorite | 14 comments
Had a lengthy debate with Linode over why I can't get more CPU core priority and RAM without buying storage and transfer I don't need. Now I'm left with a need for a more concurrency capable virtual machine provider.

Linode says they simply will not adapt right now, as a matter of choice to offer exactly the packages they currently have available. They claim their infrastructure is so premium and their customer service is so awesome I'll be sad if I go leave to get what I actually need. I'm already sad to be leaving on the customer service side.

I am considering Digital Ocean. I am wondering if anyone in the HackerNews world has a better provider with Pacific Coast based data centers who are concurrency friendly.

Is there an awesome provider of cores and RAM I'm overlooking, compared against Digital Ocean?

Right now, I'm just looking for a powerful dev environment with +8 cores and +8gb RAM, without sinking 600-1200 USD into a physical machine. If I like the provider, I'll move completely off Linode for production too.



I've been using BigV for this -- http://www.bigv.io/ -- based in the UK and run by Bytemark (who are one of the few hacker friendly hosts out there -- they support projects like Debian, OpenStreetMap, XBMC and my own Libre.fm)


BigV is awesome, even if I might be slightly biased ;)

That said there is the same problem there, if you specifically want access to more cores you pay for RAM you don't need - since the two are linked, more RAM == more cores, as you step up the numbers.


I immediately thought of BigV too - my provider of choice for cloud servers that need to stay up and perform well.

Their cores scale with memory, but they're pretty reasonable on how much - £80 pm for 3 cores and 8 Gb of memory, for example.


do you know any other hosts that have crazy scalable memory?


So far, testing Digital Ocean, the ability to spin up a new VM in 55-70 seconds, clone over one of my own "snapshots" created on a lower cost VM and configured to perfection, test it for 5 minutes to an hour and then destroy it with the comparible reverence of used toilet paper, has been extremely invigorating and ridiculously useful.

Messing with VM configuration for half the time rather than directly testing during that time and destroying well before the metered hour seems like a practice from century ago in terms of advancement, after what I just experienced when testing Digital Ocean.

And they detected in my 4-7 sentence questions that I was unsure of their platform and gave me incentives to spend the time to try them out, and it made all the difference. I did spend a few hours trying, and I am impressed. Now, all that's needed is the long term testing process with extremely respectable numbers to start with, even before jRuby/Java warmed up completely.


Really feeling the CPU caps ( per package ) even at Digital Ocean now, even though the actual packages can scale cores. Would be nice to add/remove resources a la carte. Looks like it'll be at least another 6-18mo before the industry shifts to more concurrent friendly virtual machines.

At Digital Ocean: No ability to add IP addresses, change the RAM, cores ( as I said ) or any other resource without moving up to the next virtual machine. Seems like Linode and DO are not so different after all, but two of a kind.


I recommend getting a dedicated server from Hivelocity. You can find deals on webhostingtalk forums. I have a quad core latest gen xeon with 16gb of ram and raided SSD (128gb and 480gb drives) for $180/month. If you don't need elasticity then its a much better option. You can get new servers in matter of hours too.


had a horrible experience with billing. At the time I was with them it was difficult to cancel my subscription (requiring fax and signing to confirm cancel wtf) and deciding to go ahead and bill me for the next month when I told them in advance I would be cancelling.

I really have never been with a host that have made it so difficult to cancel when I needed to. Maybe they changed now, this was a few years ago.


For a hosting company, offering virtual machines, the two most contended resources are CPU & RAM. Disk is practically free, even with SSDs these days.

So it makes sense that they'd want you to pay a premium for more cores, and bundle that with things like storage that you don't want.


But NONE of their packages go beyond 8 cores, even with higher priority coming with their higher packages.

I am fine with the fact that I'm sharing cores, I just need more of them.


can you help us understand why you need more cores on a single box and cannot scale horizontally?


I'm using actor-based concurrency extensively, with multiple actors which stay alive between "requests." I don't hold on to cores for a long time, but I hit them extremely often and let them go. It's a pretty intense mix of fibers and threads.

There are always multiple pools of actors always remaining available, and one request might use multiple pools during the course of creating its response.

If I don't have many cores, a lot of time goes into actors waiting for a core to run on. This means a lot of blocking/suspended pauses. With 8 cores of significant priority, certain operations take 2 seconds that would take 11+ seconds with 4 cores, or more with 2 cores. Looking at stacktraces, the majority of that time goes into purely waiting to resume one actor until another completes a task, then looking further, that actor completing a task is just waiting to get onto a core at all. That isn't supposed to be the case. I need to scale vertically, and I'll end up "using" a lot less than if I scaled horizontally.

I need to get away from using a local machine, specifically my actual development "console" if you will, with my IDE etc, because running all my application on this local machine causes the virtual machine on my local hardware to need to schedule out tasks on its threads.

Because of this real need for actual cores, I can also tell when CPUs have true cores, or "hybrid" cores where there are really 4 cores which simulate being 8 cores.


seems to me a refactor to some kind of producer/consumer job queuing is in order? Then you can get N boxes working...


go dedicated. prgmr.com has some of the low cost options for dedicated servers.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: