Skip to content

Instantly share code, notes, and snippets.

@Viroide
Last active April 14, 2020 07:52
Show Gist options
  • Save Viroide/de43ce871e09fad1c02139e59273f4f4 to your computer and use it in GitHub Desktop.
Save Viroide/de43ce871e09fad1c02139e59273f4f4 to your computer and use it in GitHub Desktop.
Sky 1M ticket loadtesting

Final testing

  • Production BD
  • A swarm of locust playing games
  • A local locust asking for unclaimed tickets
  • 1,000,000 tickets

Production BD:

  • 34Gb (compressed)

Swarm of locust playing games:

  • 100 concurrent users
  • Games:
    • 7UP
    • 7_11_21
    • BOSS_THE_BALL
    • BOSS_THE_LOTTO
    • CHEEKY_FRUITS
    • DIAMOND_DEAL
    • EPIC_GEMS
    • FOOTBALL
    • JINGLE_UP
    • MELON_MADNESS
    • ROULETTE_EU
    • THE_LINK_SCRATCH
  • wait_time = between(5, 10)

Unclaimed locust:

  • 1,000 concurrent users
  • def get_unclaimed(self):
      userNumber = random.randint(1, 1000000)
      session.real_sky(self, userNumber)
      session.get(self, "/sky-lotto/free-tickets/unclaimed")
  • wait_time = between(5, 10)

Timeline (2020-04-10):

  • 07:54:14 UTC => Starts game locust
  • 08:30:27 UTC => Starts processing
  • 08:44:00 UTC => Starts unclaimed locust
  • 08:45:27 UTC => Starts crediting
  • 08:49:30 UTC => Ends processing
  • 08:54:14 UTC => Ends game locust
  • 08:57:14 UTC => Ends unclaimed locust
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment