Are clusters instance on several continents going to improve response time?


I need to transform a website that has the following characteristics:

  • The content does not change often
  • The content is made up of large files (Videos, Images …)
  • The users are on different continents (mainly Europe and South America).
  • It is an association so budgets are limited.

Currently, the site uses a PHP/Mysql solution hosted in Europe. Performance in some places is not good.

The architecture I am considering is based on ipfs-cluster for storage.
Today I have three nodes:
One in Europe, one in South America and one in my development station. They are up and running and the results are promising.

But finally I ask myself the following question: since IPFS is distributed is it really necessary to have nodes on different continents from a performance point of view?
Wouldn’t it be the same to have a VPS node in Europe, a Raspberry PI machine permanently connected and a dev. machine?

Thank you for your feedback.

Hey rblog,

the response time depends largely on the way the data is “found” in ipfs. If you access the content via a CID and the accessing node isn’t already connected to a node that got the content you’ll have to do a search in the DHT for providing nodes.

That will introduce the most latency.

That said, yes, the more nodes you have distributed around the globe holding the content, the better. But it’s not really necessary - since you’re dealing with larger files where latency isn’t having a large impact anyway.

If you’re tight on budget, maybe think about setting up a collaborative cluster? People can help you hold the content for free :slight_smile:


Thanks for the answer, yes there is a way to work with Collaborative Clusters but I am not convinced that it would be a good fit in this case.
In the meantime I was thinking of opening up the gateway section on my clusters so that access is direct and in case of error make the request on a public gateway.
But in fact I would see the performance in production, because at the moment it seems quite acceptable and relatively straightforward.

In this case just create a CRDT-Cluster and don’t share the secret. A cluster does help to scale a setup in case you need a more localized server and helps to make the data available to be written from multiple locations etc.