3

I've been contemplating the value of essentially running all your own infrastructure by deploying Cardano node, along side DB Sync and exposing it through Cardano GraphQL.

I like the idea of building essentially my own payment gateway into Cardano completely ran by myself, without the use of any third party APIs.

Given the cost of cloud solutions and per the requirements of the node/db-sync and GraphQL the costs would be around:

  • On DigitalOcean as an example, the cheapest VM that meets the basic requirements for db-sync is $120/mo
  • Blockfrost 300,000 tier is roughly $70/mo

Is the convenience of not running your own infrastructure and hooking into Blockfrost the best option for low traffic websites/dApps?

1,000,000 requests per day can go pretty quickly when running a decently sized web3 based website, though the managed IPFS storage and pinning does seem tempting.

To be clear, I think Blockfrost has done alot for the Cardano ecosystem and will probably end up going with them. This was more of a thought experiment to see both sides of the coin and lay out the strongest possible case for each. I do like the idea of running my own Cardano infrastructure but think that until you're getting into a decent size of traffic it may be better to utilize Blockfrost.

2 Answers 2

3

I've been on a bit of a journey with this so might be able to add some insight. We originally started by running our own node inside our Kubernetes cluster, alongside a cardano-wallet container that we used to interact with the Wallet REST API. This proved to be reasonably easy at first while we were on testnet. However, when our app hit mainnet, suddenly we needed a far larger Kubernetes node to run the cardano-node binary. Our hosting costs sky-rocketed to $250+ a month, and we had the extra work of ensuring our node version was kept up-to-date, and that the node was up reliably in order for our app to transact consistently. It suddenly made absolutely no sense for us to continue this model, and we are now in the process of migrating all our code to use Blockfrost instead. Even if we have to pay $70 a month, we'd be saving a massive amount of time and money compared to running the node. Personally, I also can sleep better at night knowing that our Cardano node isn't sat on the internet somewhere, i.e. if someone accidentally modified our Kubernetes config and exposed the API to bad actors.

In the future I hope to go to a hybrid approach where we use a combination of both our node and Blockfrost, since it's also worth noting that if everyone used Blockfrost or similar API's it hurts decentralization.

1
  • 1
    This is where I'm at as well. If and when my DApp becomes successful enough to warrant running my own infrastructure, $250 will be a small price to pay, but for now Blockfrost just makes sense. Nov 18, 2021 at 20:42
2

I think the best answer is that it depends on your specific use case.

A lot of people start their project using just Blockfrost as they do not want to invest a lot of resources into their infrastructure before exploring their idea.

Most of the large Blockfrost customers are actually running both, mostly for scaling and fail-over.

Also, I would point out, the cost of cloud resources are not as significant as the effort of providing 24/7 maintenance of the infrastructure and keeping up with different bugs and upgrades of the specific components. However, that strongly depends on how much you value your own time and how much new skill you would have to acquire to become your own devops.

Full disclousure, I'm a Blockfrost developer.

1
  • I was leaning towards using Blockfrost, atleast for the foreseeable future. I will note that I am surprised to find out that many large projects are running both, but I guess that does make sense to not have a single point of failure. Nov 8, 2021 at 3:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.