Reaching more than 70,000 HTTP requests per second in Cloud Load Balancing

Posted by Zevenet | 5 September, 2016 | Technical

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

    SHARE ON:

Related Blogs

Posted by zenweb | 30 January 2018
A fast detection and protection against DDoS and malicious requests are a must to prevent a cybersecurity attack. This is even more important for public services like web services, web…
Posted by zenweb | 18 January 2018
Global Service Load Balancing, as well known as GSLB, is a load balancing technique that permits to build fault tolerance, automatic disaster recovery, load balancing across WAN servers and improved…
Posted by zenweb | 19 December 2017
Usually, during an infrastructure design it's required to study the requirements of the services and estimate the resources needed to avoid oversizing or undersizing the platform, but even we need…