Introducing the EOS API Proxy Service

in #eos6 years ago

BLOCK MATRIXEOS API PROXY LAUNCH (1).png

We are excited to officially launch our EOS API Proxy to the community. We hope that this service will become a fundamental building block for all dApp developers, helping abstract away the complexities of communicating with the EOS blockchain into a single API host.

The service is 100% free, requires no custom integration or client side library, and has already served over 500,000,000 successful requests since we opened it for beta.

You can try it now in your browser, let's use the /chain/get_info endpoint (hint, check the HTTP headers in dev tools): https://proxy.eosnode.tools/v1/chain/get_info

The Problem for dApp Developers

As the network continues to grow, it has become more difficult to manage a pool of reliable EOS API nodes which provide the data to power applications and to interact with the chain. The problem is further amplified based on the type of queries that dApp developers want to run. For example, not all API nodes have full history enabled for every account, therefore it can be extremely difficult to provide a consistent user experience within a dApp.

The Problem for Block Producers

It's natural for a developer to find a single reliable API node and hardcode all requests to it. Continued reliability leads to more developers adopting the same API, and suddenly one producer is beginning to struggle under the weight of requests (similar to the thundering herd problem). On the flip side, there are many producers with great hardware that operate well under capacity as they are less known within the developer community.

The Solution

We have created a single API host that automatically proxies requests to the closest and most performant nodes in the EOS network. It does so by continually monitoring the performance of the top block producer API nodes, feeding the results into a real-time selection algorithm which will re-route the request to the most relevant node at that point in time. Not only does this make reliable chain interaction easier for developers, but it also improves the user experience of any dApp as data is returned faster due to requests being contextual to the user’s geographic location.

Validating the Service

The community spirit within EOS is amazing! We have developed this service in conjunction with some of the biggest dApps in the ecosystem and have consulted with several block producer teams to make sure that the API proxy contains all the features needed to make it a true drop-in replacement for any EOS API host.

We would like to give special thanks to:

  • Dafeng @ EOS Asia for being an early adopter, helping shape the product by integrating it into several dApps and taking the time to review several upgrades to the app and inform the dev community of the service
  • Syed at EOS Cafe Block for great feature suggestions and catching some edge case scenarios
  • Nathan at Scatter for helping validate the idea and confirming that it will work within various client side libraries
  • Cesar from Nebula Protocol, Charles from EOS42, Ben from shEOS and all the others who have helped along the way!

Whats Next

We are currently serving upwards of 50,000,000 requests a day through the proxy, and we record metrics for every request. As we see a cross section of all requests to the EOS chain, we are collecting a lot of interesting data that we want to share with our fellow block producers to help improve API performance and reliability across the EOS network.

Our plan is to also open up a public metrics dashboard, similar to our node monitor which will allow anyone to interrogate the stats across producer, geo location, api endpoint and various other metrics to better understand the request patterns across the globe.

Finally, we are planning a series of blog posts on the technical side of how we built the proxy. Most of team at Block Matrix come from the online ad industry, we specialise in creating tech that can handle billions of events, and it’s been so much fun building and iterating on the API proxy app - we're excited to share what we’ve learnt along the way.

More Info

There is a dedicated microsite for the API Proxy @ https://eosnode.tools/proxy

If you'd like to discuss anything further, we have a telegram group @ https://t.me/eosnodeproxy


About Block Matrix

Block Matrix are currently a standby BP for the EOS network. We are super passionate about the EOS project and are focused on creating robust infrastructure and applications to support the network and the wider community.

Website
EOS Node Tools
Github
Twitter
Telegram

Sort:  

Congratulations @blockmatrix! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Vote for @Steemitboard as a witness to get one more award and increased upvotes!