I'm looking for an open source library that will allow programmatic loadbalancing across a set of calls to nodes of arbitrary form - so no assumptions about HTTP or anything else, just a method call on an object. Ideally it would provide the following functionality:
I feel this ought to exist already, but some googling has yet to find it.
jetNEXUS is the best one for enterprises that want advanced traffic load management features. Other load balancer apps that are suitable for medium and big enterprises include Total Uptime Cloud Load Balancer, Citrix ADC, Nginx, and Avi Vantage Software Load Balancer.
HAProxy. HAProxy is an L4 and L7 load balancer supporting TCP and UDP traffic. It's a well-established, open source solution used by companies such as Airbnb and GitHub. HAProxy is also a very capable L7 load balancer, supporting HTTP/2 and gRPC backends.
L4 load balancing delivers traffic with limited network information with a load balancing algorithm (i.e. round-robin) and by calculating the best server based on fewest connections and fastest server response times. L7 load balancing works at the highest level of the OSI model.
What is Eureka? Eureka is a REST based service that is primarily used in the AWS cloud for locating services for the purpose of load balancing and failover of middle-tier servers. We call this service, the Eureka Server.
Consider using Apache Camel library. There is a flexible load balancer and the library have a vast variety of components so you don't stick to particular protocol or service implementation. With Camel Bean component you can load-balance even POJO method calls.
You could also look at JavaSpaces. The paradigm there is a simple queue. The least active processor is the most likely to take the next item on the queue.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With