-3

We are working for a project that has huge traffic load on Chinese new year eve. Our target throughput is up to 20w pqs and we did not ever have experience handling such large traffic before.

We are using Spring MVC backend and Mysql with Percona cluster as database layer and redis for cache. Our network infrastructure is LVS->nginx->tomcat ->mysql/redis.

What will you do when you working on such scenario?

Santosh
  • 366
  • 4
  • 13
Vance
  • 400
  • 5
  • 15
  • Are you a site holder? What kind of technology are you using? Please provide more information, otherwise there is not way to provide concrete answer. – AlexR Jan 27 '16 at 08:39
  • @AlexR we are using springmvc backend and mysql with Percona cluster as database layer and redis for cache. Our network infrastructure is LVS->nginx->tomcat ->mysql/redis. – Vance Jan 27 '16 at 08:45
  • Sounds good. Have you tried a load test? What are the results? – AlexR Jan 27 '16 at 09:10

1 Answers1

1

First you need to scale you application by running PAT kind of testing.

And,

There are three main strategies for handling the load:

  1. The site can invest in a single huge machine with lots of processing power, memory, disk space and redundancy.
  2. The site can distribute the load across a number of machines.
  3. The site can use some combination of the first two options.

When you visit a site that has a different URL every time you visit (for example www1.xyz.com, www2.xyz.com, www3.xyz.com, etc.), then you know that the site is using the second approach at the front end. Typically the site will have an array of stand-alone machines that are each running Web server software. They all have access to an identical copy of the pages for the site. The incoming requests for pages are spread across all of the machines in one of two ways:

  • The Domain Name Server (DNS) for the site can distribute the load. DNS is an Internet service that translates domain names into IP addresses. Each time a request is made for the Web server, DNS rotates through the available IP addresses in a circular way to share the load. The individual servers would have common access to the same set of Web pages for the site.
  • Load balancing switches can distribute the load. All requests for the Web site arrive at a machine that then passes the request to one of the available servers. The switch can find out from the servers which one is least loaded, so all of them are doing an equal amount of work. This is the approach that HowStuffWorks uses with its servers. The load balancer spreads the load among three different Web servers. One of the three can fail with no effect on the site.
Santosh
  • 366
  • 4
  • 13