Scalable service discovery and load balancing using direct client connections to servers

US12368775B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12368775-B2
Application numberUS-202318328675-A
CountryUS
Kind codeB2
Filing dateJun 2, 2023
Priority dateJun 2, 2023
Publication dateJul 22, 2025
Grant dateJul 22, 2025

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

There are provided systems and methods for scalable service discover and load balancing using direct client connections to servers. A service provider, such as an electronic transaction processor for digital transactions, may provide different computing services to users through client devices, which utilize server instances from server pools and the like to provide the computing services to users. This may include providing servers to handle client requests and process data with users. When client devices connect to the service provider's system, service discovery may be performed to find an available server instance to handle client requests. To provide scalable service discovery, load balancers may, instead of managing client requests through the load balancers, ping server instances from a server pool to identify a network address of an available server. This may be returned to the client device and a direction connection may be made between the device and server.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: a non-transitory memory; and one or more hardware processors coupled to the non-transitory memory and configured to read instructions from the non-transitory memory to cause the system to perform operations comprising: establishing, by a load balancer of the system, a first connection with a client device responsive to a connection establishment request by the client device; determining a first server from a pool of servers for the system based on at least one of a plurality of server balancing metrics; forwarding, by the load balancer, the first connection to the first server, wherein the forwarding causes the client device to connect to the first server through the load balancer via the first connection; receiving, at the first server, a ping request from the client device via the first connection; providing, by the first server, a ping response to the client device, wherein the ping response comprises a first network address of the first server; and establishing, by the first server independent of the load balancer, a second connection with the client device using the first network address, wherein the second connection is established to handle at least one subsequent client request from the client device, wherein the second connection uses the first network address. 2. The system of claim 1 , wherein the ping request and the ping response are transmitted through the load balancer between the client device and the first server prior to the establishing the second connection that communicates the at least one subsequent client request directly between the client device and the first server independent of the load balancer. 3. The system of claim 1 , wherein the operations further comprise: closing the first connection in response to the second connection being successfully established directly between the client device and the first server. 4. The system of claim 1 , wherein the operations further comprise: determining that the second connection is unsuccessful for communicating the at least one subsequent client request directly between the client device and the first server; determining, by the load balancer, a second server from the pool of servers based on the at least one of the plurality of server balancing metrics; and utilizing, by the load balancer, the first connection for establishing a third connection between the client device and the second server. 5. The system of claim 4 , wherein the operations further comprise: detecting that the third connection is successfully established between the client device and the second server; and closing the first connection with the client device. 6. The system of claim 1 , wherein the operations further comprise: maintaining, by the load balancer, the first connection with the client device; and monitoring, by the load balancer, server interaction data between the client device and the first server via the first connection. 7. The system of claim 1 , wherein the at least one of the plurality of server balancing metrics utilize server availability data with at least one of a round robin technique, a consistent hashing technique, a least connection technique, a fastest response technique, or a least load technique. 8. The system of claim 1 , wherein the connection establishment request comprises a service discovery request for discovery and usage of a computing service from the system, wherein the computing service is provided via the first server and comprises at least one of a risk service, a fraud detection service, a transaction processing service, a key value store service, or a computing decision service. 9. The system of claim 1 , wherein the first connection comprises a persistent connection that is pre-established in a background computing thread during the connection establishment request, and wherein the persistent connection does not require an additional handshake when forwarding the first connection to the first server. 10. A method comprising: establishing a first connection between a load balancer and a client device when the client device connects with a service provider system over a network; determining a first server of the service provider system that is available to handle processing of data with the client device; connecting the client device to the first server via the first connection through the load balancer; receiving a request from the client device for a network identifier of the first server via the first connection; providing the network identifier to the client device via the first connection; establishing a second connection over the network directly between the client device and the first server using the network identifier provided to the client device, wherein the second connection enables the data to be processed between the client device and the first server; and ending, by the load balancer, the first connection with the client device. 11. The method of claim 10 , wherein the data is processed by the first server with the client device without packets for the data being forwarded by the load balancer to the first server. 12. The method of claim 10 , wherein the first connection uses a persistent connection without requiring additional device handshakes during the connecting the client device to the first server, and wherein the determining the first server is based on a server selection operation comprising one of a round robin technique or a consistent hashing technique. 13. The method of claim 10 , wherein the receiving the request is performed using a ping request by the client device and the providing the network identifier is performed using a ping response by the first server to the ping request, and wherein the ping request and the ping response and transmitted through the load balancer using the first connection. 14. The method of claim 10 , wherein prior to the determining the first server, the method further comprises: attempting to establish a third connection between the client device and a second server of the service provider system; and determining that the third connection was unsuccessful, wherein the determining the first server is responsive to the determining that the third connection was unsuccessful. 15. The method of claim 14 , wherein, prior to the ending, the method further comprises: determining that the second connection is successful for processing the data directly between the client device and the second server subsequent to the third connection being unsuccessful, wherein the first connection is ended responsive to the second connection being successful subsequent to the third connection being unsuccessful. 16. The method of claim 10 , wherein the second connection comprises a secured connection that is periodically recycled with a plurality of connections, and wherein the load balancer refreshes the second connection or establish a third connection between the client device and the first server or a second server when periodically recycling the plurality of connections. 17. The method of claim 10 , wherein the determining the first server is based on at least one machine learning (ML) model trained on server availability data, and wherein, prior to the determining the first server, the method further comprises: executing the at least one ML model for a server availability prediction for a plurality of servers of the service provider system, wherein the first server is determined based on the server availability prediction. 18. A non-transitory machine-rea

Assignees

Inventors

Classifications

  • H04L43/10Primary

    Active monitoring, e.g. heartbeat, ping or trace-route · CPC title

  • based on the content of a request · CPC title

  • H04L67/101Primary

    based on network conditions · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US12368775B2 cover?
There are provided systems and methods for scalable service discover and load balancing using direct client connections to servers. A service provider, such as an electronic transaction processor for digital transactions, may provide different computing services to users through client devices, which utilize server instances from server pools and the like to provide the computing services to us…
Who is the assignee on this patent?
Paypal Inc
What technology area does this patent fall under?
Primary CPC classification H04L43/10. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jul 22 2025 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 7 related publications on this page (citations in our corpus or others sharing the same primary CPC).