1

I need some advice. What's the best way for a Windows/.NET developer like me to access blockchain information via a REST/RPC API ?

The server app I'm building does the following on a fairly regular basis:

(1) Looks up all transactions involving a specified Bitcoin address and takes action based on the results, and...

(2) Executes outbound transactions, where the transaction bytes are supplied as a preconfigured hex-formatted byte stream.

Here's what I'm doing now:

There's a web API called Insight. It's used by Block Explorer and documented here at https://blockexplorer.com/api-ref. This is where I'm currently pointing my app. It works really well and seems to handle everything I throw at it but I'm concerned that as my load increases (e.g. peaking at 100 queries/minute or more), at some point the site operator will cut me off.

I've tried to mitigate the problem by finding other sites that support the same API. https://insight.bitpay.com is one. https://chain.localbitcoins.com is another. I put these sites in a text file and my app calls into the API on each site in a round robin fashion.

This works. Still though, I'm now encountering errors from the sites' respective CDNs that sit in front of some of the sites -- presumably because I'm running too many queries.

What's a more scalable solution for me?

I have no problem paying a few hundred bucks per month for an AWS server to run a service on my own -- one that only I would use. I'm not exactly sure how to do this though. The Insight API I'm using now, like much of the Bitcoin world, seems geared toward the Linux/Python crowd -- not old farts like me in the Windows/.NET world. I wouldn't even know how to install it.

I also ran across the RPC API located here at https://en.bitcoin.it/wiki/API_reference_(JSON-RPC). Does anyone have any feedback on it's viability? Would I basically be running my own "node" at that point? I wouldn't mind doing that if it runs on Windows 2016. My needs are simple. I'm not mining or anything like that; Just running tons of queries (max 100/min) and executing transactions (max 10/hr).

Any advice is appreciated.

Best,

Festus

  • You can use https://github.com/GeorgeKimionis/BitcoinLib which is a battle-tested library to run your own, fully autonomous node, without having to rely on any 3rd party services. –  Feb 24 '17 at 01:51

0 Answers0