Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

App Engine app performance test

I have used jMeter for testing my appengine app performance.

I have created a thread group of

  • 500 users,
  • ramp up period: 0 seconds
  • and loop to 1

and ran the test.

It created 4 instances in app engine. But interesting thing is, > 450 requests were processed by a single instance.

I have ran the test again with this instances up, still most of the requests (> 90%) were going to same instance.

  • Instance type: F1 Class
  • Max Idle Instances: ( Automatic )
  • Min Pending Latency: ( Automatic )

I'm getting much higher latency.
What's going wrong here? Generating load from 1 IP , is there any problem?

like image 498
Dipin Avatar asked Mar 14 '12 06:03

Dipin


1 Answers

Your problem is you are not using a realistic ramp up value. AppEngine, like most auto-scaling solutions, requires a reasonable amount of time to spin up new hardware. During this process while it is creating the new instances latency can increase if there was a large and sudden increase in traffic.

Choose a ramp up value that is representative of the sort of spikes / surges you realistically expect to see on Production and then run the test. Use the values from this test to decide how many appEngine instances you would like to be 'always on', the higher this value the lower any impact from a surge but obviously the higher your costs.

like image 154
Oliver Lloyd Avatar answered Sep 27 '22 18:09

Oliver Lloyd