Performance difference between NYC1 and NYC3 or "volumes" performance?


I recently migrated all my infrastructure (cluster of app and database servers) from NYC3 to NYC1 in order to use the volumes that DO introduced a short time ago. (And yes I migrated because of that…).

Following the migration, I noticed a decrease in performance for servers that require lot of write/read operations, such as my master database and application servers.

As the only difference before and after the migration are the usage of “volumes” and the change of Datacenter, I’m therefore wondering if:

  • Using “volumes” instead of the droplet storage may decrease performance?
  • There are any differences between techs used in NYC3 and NYC1 that may explains changes in performances?



Submit an answer
You can type!ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

Hi @mmb

I don’t have an answer, since most of us in here don’t work for DO, but let’s see if Darian (the platform advocate of DO) can give us an answer.

I would speculate that block storage is a little slower, since it’s network based and I would guess droplet storage is physical on each hypervisor. And depending on who your neighbors are, then there could be a speed difference, but I don’t know if there is any hardware difference.

@dwilkin Hi Darian, can you help answering this? 1) Is block storage slower the droplet storage. 2) Is there droplet HW difference between NYC3 and NYC1.

@mmb I noticed the exact same thing when trying to use DO block storage as a filesystem for databases.

I haven’t made a scientific test but compared the performance in a real world application and noticed that using block storage is 10 times slower than using the droplets internal storage.

Creating Database, User, Password, Flushing privileges and Importing a 44KB mysql dump with attached block storage:

Execution time : 4.2606270313263 seconds
Execution time : 4.2530460357666 seconds
Execution time : 4.1727960109711 seconds
Execution time : 4.3930230140686 seconds

Doing the exact same thing directly on the Droplet:

Execution time : 0.58489298820496 seconds
Execution time : 0.44117593765259 seconds
Execution time : 0.5139148235321 seconds
Execution time : 0.4229941368103 seconds

So this basically rules out using DO block storage for anything other than backups or static files. Let me know if you found another solution,