+ Reply to Thread
Results 1 to 4 of 4

Thread: java api for load testing?

  1. #1
    Junior Member
    Join Date
    Oct 2010
    Posts
    9
    Thanks
    0
    Thanked 0 Times in 0 Posts

    java api for load testing?

    Hello, what would you suggest for running a cuple of thousands clients for a load-test? I've taken a look at the whitepaper from the homepage but there aren't many details on how the tests were done.
    Did you run multiple client instances using the java API? I thought of using this approach but I wonder how can I possibly run a few thousand bots on a limited number of machines (2-3 laptops). In your document you state that you used up to 30 machines with 4GB of RAM. It means you were running more than 10,000 clients per box?Right? I don't think it can be done with the java api, any suggestion would be great.
    Thanks

  2. #2
    Administrator tcarr's Avatar
    Join Date
    Dec 2007
    Posts
    7,209
    Thanks
    80
    Thanked 1,086 Times in 1,075 Posts
    We used SoftLayer servers for running our Java load test clients, as well as a SoftLayer server for the ES5 server. These were all high performance servers. Concurrency is essential.

    The load test clients used the ES5 Java client api combined with a load test framework that spawns a thread for each load test client then uses a finite state machine to control the client's actions. If you email sales AT electrotank DOT com we might be able to send you the load test framework, but we do not offer free tech support in customizing it for use in your own project.
    Teresa Carrigan
    Senior Engineer
    Electrotank, Inc.

  3. #3
    Junior Member
    Join Date
    Oct 2010
    Posts
    9
    Thanks
    0
    Thanked 0 Times in 0 Posts
    Hi Teresa
    Wow that sounds amazing. Ok I will drop an email and have a look at the framework although I think it's more for a learning purpose than for actually using it. I need to run the tests locally with the resources we have.
    Do you think a thousand clients can be spawned on a today's average laptop? I mean building one java client and the replicating as many times as cpu and ram allow, in the same jvm.
    Those many threads is what worries me a little because they are quite memory intense, in fact I wonder how exactly you managed to run 10K+ threads on a 4GB box. If each thread eats up 512k for stack space so 10 thousand of those would require ~5GB?

    Amin

  4. #4
    Administrator tcarr's Avatar
    Join Date
    Dec 2007
    Posts
    7,209
    Thanks
    80
    Thanked 1,086 Times in 1,075 Posts
    The only load tests I've done myself have been with ES4 several years ago, using an older version of the load test framework, and that was done at the application level rather than implementing the framework itself. With that said, I strongly suspect that the load test framework uses a thread pool rather than a dedicated thread for each of the clients. Those Java load test clients spend a lot of time sleeping, so that they can simulate humans who take a while to click buttons, send messages, etc.
    Teresa Carrigan
    Senior Engineer
    Electrotank, Inc.

+ Reply to Thread

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts