ZVNcloud is a Load Balancing as a service solution developed in the cloud powered by #ZenLoadBalancer technology and #DigitalOcean cloud platform to orchestrate load balancing services on demand. Thanks to this technology users can deploy a virtual load balancer in cloud in more than 12 Datacenters around the world in less than 2 minutes.

The following document shows how ZVNcloud is able to handle more than 70,000 HTTP concurrent connections with a simple virtual load balancer with a cost of 0.134€/hour.

In the picture below it’s shown the environment tested:

Map ZVNCLOUD

    • One Web client installed in a Datacenter from London, this node is ready to send thousands of remote HTTP concurrent connections per second.
    • A second web client installed in a Datacenter from Frankfurt, this node is ready to send thousands of remote HTTP concurrent connections per second.
    • A Virtual Load Balancer deployed in a Datacenter from New York with public virtual IP and raw TCP scheduler through port 80, configured to offer load balancing service for two Web Servers in San Francisco.
    • A web application deployed in a Datacenter from San Francisco with public IP address and port 8080
    • The same web application replicated in a second Web Server in another Datacenter from San Francisco with public IP address and port 8080

 

Here the configuration of the ZVNcloud virtual load balancer with L4xNAT profile

myservice port/s 80

Once the load balancer setup is finished, it’s ready to attend requests and share them among the backends servers.

Client 1 from London and client2 from Frankfurt execute the command wrk, which permits to launch thousands of concurrent web connections, and here is the results obtained:

client1:London
Started: Tue Aug 30 11:01:16 AM 2016
Running 30s test @ http://162.243.165.124
  12 threads and 40500 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     1.05s     1.93s   28.81s    90.16%
    Req/Sec     1.29k   406.93     3.45k    72.76%
  457400 requests in 30.10s, 100.33MB read
Requests/sec:  15193.81
Transfer/sec:  3.33MB
Finished: Tue Aug 30 11:01:46 AM 2016
client2: Frankfurt
Tue Aug 30 11:01:16 AM 2016
Running 30s test @ http://162.243.165.124
  12 threads and 40500 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     1.34s     2.45s   29.24s    90.60%
    Req/Sec     1.34k   454.44     3.72k    72.57%
  475069 requests in 30.12s, 104.20MB read
Requests/sec:  15773.61
Transfer/sec:  3.46MB
Finished: Tue Aug 30 11:01:46 AM 2016

The test was executed during 30 second and the numbers obtained are the following: a total amount of 932,469 HTTP requests in 30 seconds which transmitted 204,53 MB.

The following graph shows how the load balancer manages the connections during the benchmark:Concurrent conns graphic, load balancing, adc, cloud servers

Here a complete table with the results obtained per second:

request per second table, load balancing, per second load balancing, cloud load balancing, adc, ADC

In conclusion, ZVNcloud as a virtual load balancer of 0.134€/hour with Digital Ocean cloud infrastructure is able to reach 70,408 HTTP connections load balancing request from two clients to two Web Servers geographically distributed in different datacenters without errors.

More information in www.zvncloud.com