Systems and methods of exposing data from blockchain nodes
Abstract
The present disclosure relates to a system and method for exposing data from blockchain nodes and orchestrating requests to blockchain nodes. The system mainly includes a client application, a load balancer, and blockchain nodes connected to the blockchain network. The system receives a request from the client application. The load balancer is configured with an upstream selection logic and configured with custom metadata specific to blockchain nodes. Based upon the upstream selection logic, the load balancer generates a proxy request to the selected blockchain node. The load balancer of the system is a general-purpose load balancer having built-in plugins, such as an authentication service unit and a tracking unit. Based on the selection logic and the upstream metadata, the general-purpose load balancer is extended with custom plugins.
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. A system for orchestrating requests to a set of blockchain nodes, comprising:
a processor coupled to a memory;
at least one client application configured for generating a request to one or more blockchain nodes;
a load balancer communicatively coupled to the at least one client application configured for receiving the request and generating a proxy request corresponding to the request, wherein the load balancer is configured with:
a load balancer plugin that polls custom metadata specific to a blockchain protocol for orchestrating the request within the set of blockchain nodes connected to the same blockchain network, and
an upstream selection logic implemented on the load balancer to identify an optimal blockchain node to serve the request based on the polled specific custom metadata;
an authentication service unit, integrated with the load balancer, configured to authenticate the request; and
a tracking unit, integrated with the load balancer, configured for tracking the request.
2. The system of claim 1 , wherein the load balancer is configured to return a response received from the identified optimal blockchain node to a client service from which the request was received.
3. The system of claim 1 , wherein the load balancer is implemented on an infrastructure layer for routing the proxy request to the one or more blockchain nodes connected to the same blockchain network.
4. The system of claim 3 , wherein the infrastructure layer is one of standalone gateway or a service mesh infrastructure.
5. The system of claim 1 , wherein the request is proxied based on the upstream selection logic, and wherein the upstream selection logic is based on at least one parameter of node location, state, current block height, synchronization status, node mode, or number of peers.
6. The system of claim 5 , wherein a periodical poll is conducted on each blockchain node of the set of blockchain nodes at each load balancing instance, and during the periodical polling, each load balancing instance, monitors current status of each blockchain node.
7. The system of claim 5 , wherein if upstream selection criterion is met by more than one blockchain node, conventional selection logic is applied to select a blockchain node to handle the request.
8. The system of claim 1 , wherein the load balancer is further configured to retry the execution of failed requests, and if the request cannot be executed after trying for a predetermined number of times, the load balancer generates an alert or error message to be returned to the client application.
9. The system of claim 1 , wherein the load balancer is a general-purpose load balancer.
10. A method for orchestrating requests to a set of blockchain nodes comprising:
fetching a custom metadata specific to a blockchain protocol;
receiving, by a load balancer, a request to one or more blockchain nodes;
authenticating the request by an authentication service unit integrated with the load balancer;
performing an upstream selection logic for optimizing a current load on the set of blockchain nodes and selecting the one or more blockchain nodes based on the fetched custom metadata as such to fetch data faster;
generating a proxy request corresponding to the request originated from a client application by the load balancer;
tracking the request within a network by a tracking unit integrated with the load balancer; and
returning a response received by the blockchain node to the client application from which the request was received.Join the waitlist — get patent alerts
Track US11997162B1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.