SPONSORS:






User Tag List

Thanks Thanks:  0
Likes Likes:  0
Dislikes Dislikes:  0
Results 1 to 6 of 6
  1. #1
    Junior Member
    Join Date
    Jun 2002
    Location
    Vienna, VA, USA
    Posts
    1
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Actual vs. Virtual Concurrent users

    We are developing a content web portal. My client is looking to get a sense of the number of concurrent users the site can support. We are using jmeter to load test the site. I am looking for a standard metric to convert a number of virtual users to concurrent users.

    I don't know if I am explaining this well so let me provide an example. I use a number of machines to simulate 200 concurrent users in JMeter. JMeter simulates 200 users sending http requests at nearly the same time. People on the site will not be sending concurrent http requests in rapid succession. They will often be reading articles. What is an appropriate ratio of concurrent users on the site to the virtual users defined in JMeter. Is 20:1 an accurate representation? (ie. 200 users in JMeter is equivalent to 4000 concurrent users.)

    Thanks.


  2. #2
    Senior Member
    Join Date
    May 2002
    Location
    Scranton, PA
    Posts
    405
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Actual vs. Virtual Concurrent users

    Hi,

    Well to start with let me define the word ‘concurrent’ (I see some confusion in your mind about this) as it is interpreted by most of the QA guys.

    N Concurrent users in a system means that there are N users who are logged in to the system and the probability that any of them will hit the server at any point of time is far greater than any other logged out or timed out user, something like using some gate to enter a compound in a time window of say 1 hour. Note that it is implicit in this definition that these users not necessarily hit the system at the same time, which leads us to definition of 'simultaneous users. N Simultaneous users in a system means there are N users in the system that are actually sending a simultaneous request, something like trying to pass through a gate all at the same time.

    Now what most of the clients expect to know, and most of the technical documents show (ooops, is that rhyming by any chance) is the number of concurrent users. The obvious reason being this figure gives more accurate representation of real word scenario.

    Now how do you achieve non-simultaneous concurrent users? It is impossible to make the virtual users generated by any automated tool 100% non-concurrent. And being 100% non-concurrent is also not realistic, hence no need to go for that. What you can achieve is, say if you are running a load test with 100 concurrent users then only about 5% are actually hitting the servers at the same time (simultaneous). This is achieved by implanting humanity (as I call it) to the load testing scripts. You put sleep functions in between the operations, so that the virtual user waits before proceeding. (Also called think time), also this sleep period can be chosen randomly by using a random number generator. You can choose not to start all users at once simultaneously, and use things like ramp up. This will cause the users to lead/lag in phase to each other. There are hundreds of other things you can do.

    It all boils down to the ultimate target of using technology, 'make it do the things as if some human being is doing it'


    ------------------
    Euc

    while traveling parallel to a tangent , it's difficult to be normal, isn't it?
    Pankaj Bhatte
    Cognizant Technology Solutions.
    Scranton, PA
    pankajbhatte@yahoo.com

    while traveling parallel to a tangent , it's difficult to be normal, isn't it?

  3. #3
    Senior Member
    Join Date
    Dec 2000
    Location
    Pune, Maharashtra, India
    Posts
    1,037
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Actual vs. Virtual Concurrent users

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Euc:
    What you can achieve is, say if you are running a load test with 100 concurrent users then only about 5% are actually hitting the servers at the same time (simultaneous). This is achieved by implanting humanity (as I call it) to the load testing scripts. You put sleep functions in between the operations, so that the virtual user waits before proceeding. (Also called think time), also this sleep period can be chosen randomly by using a random number generator. You can choose not to start all users at once simultaneously, and use things like ramp up. This will cause the users to lead/lag in phase to each other. <HR></BLOCKQUOTE>

    I may not agree with the magic "5%" figure, but the general stream of thought seems correct. Some tools like LoadRunner have the facility of "rendezvous" points where one can make the vusers make of one or more scripts meet, pause and then start the next operation simultaneously.



    ------------------
    - Suresh Nageswaran, CQA, CSTE
    Cognizant Technology Solutions, India.
    punekar@yahoo.com

    ["Carpe diem, quam minimum credula postero!" -Horace]
    Suresh Nageswaran, CQA, CSTE
    Lead Consultant
    Kanbay Inc.
    Pune, India.
    sureshnageswaran@yahoo.com

  4. #4
    Senior Member
    Join Date
    May 2002
    Location
    Scranton, PA
    Posts
    405
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Actual vs. Virtual Concurrent users

    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by punekar:
    I may not agree with the magic "5%" figure, but the general stream of thought seems correct. Some tools like LoadRunner have the facility of "rendezvous" points where one can make the vusers make of one or more scripts meet, pause and then start the next operation simultaneously.

    <HR></BLOCKQUOTE>


    Hey Suresh,
    This is no magic figure or anything, It's just an illustration.

    Also I will like to know what kind of facilities the tool - this friend of ours is using - provides for achieving things like rendezvous.



    ------------------
    Euc

    while traveling parallel to a tangent , it's difficult to be normal, isn't it?
    Pankaj Bhatte
    Cognizant Technology Solutions.
    Scranton, PA
    pankajbhatte@yahoo.com

    while traveling parallel to a tangent , it's difficult to be normal, isn't it?

  5. #5
    Junior Member
    Join Date
    Nov 2001
    Posts
    1
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Actual vs. Virtual Concurrent users

    It could be computed through your test result. You can get the throughput(hit/second) from your 200 virtual users test. We assume that a user sends a request every 8 seconds. So the total users your site can support are throughput * 8.

    ------------------

  6. #6
    Junior Member
    Join Date
    Sep 2001
    Location
    Pasadena,ca,U.S.
    Posts
    20
    Post Thanks / Like
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Total Downloaded
    0

    Re: Actual vs. Virtual Concurrent users

    jhilger: I used to experience the same suituation in my company. Basically, your problem is how to convert the test result (in your case is the number of concurrent users in JMeter)to a constomer-orient measurement(the number of actual concurrent users represented). But, digging deeply, you will know it is a complicated problem related to a lot of aspects like usage pattern, methodology, test designing and so on.

    if the number of actual concurrent users is represented by #CU , and #VU represent the number of the virtual users in your test utility(JMeter), there should be a ratio make #CU=#VU*ratio . How ever, the ratio is not a constant, it is one of the output of your test. For example, in real word 100 users generate 10 requests/second, but in your test JMeter can generate 10 requests/seconds by using just 1 VU. At this moment the ratio is 100. When you ramp up the #VU to 100, the requests/second also goes up to 50 (unlikely 1000). It represents 500 actual users in real world. So, the ratio goes down to 5.

    So, the ratio depends on how much load a real user can generate. Unfortunetely , this is also a variable. Let's introduce a concept of thinking time. The thinking time is the period a user uses for going through the web page, making a call, writing down information, making decision and so on. It starts from the end of loading page to the beginning of another request. Assuming the average thinking time is Tt, and average response time is Tr, then a user can generate 1/(Tr+Tt) requests/seconds. #CU users can generate #CU/(Tr+Tt) requests/seconds. During your test, at any moment , the requests rate(requests/seconds RPS) is #VU/Tr (each VU can generate 1/Tr requests/second).
    #CU/(Tr+Tt)=#VU/Tr
    ratio = (Tr+Tt)/Tr
    #CU=#VU*(Tr+Tt)/Tr=RPS*(Tr+Tt)

    However, it is not easy to deduce a Tt. At the mean time,there are still a lot of factors we didn't take into consideration, like user abandonment, caching...


    [This message has been edited by charles_ezdata (edited 06-19-2002).]

 

 

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Search Engine Optimisation provided by DragonByte SEO v2.0.36 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 9.38%
vBulletin Optimisation provided by vB Optimise v2.6.4 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
User Alert System provided by Advanced User Tagging v3.2.8 (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
vBNominate (Lite) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Feedback Buttons provided by Advanced Post Thanks / Like (Pro) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
Username Changing provided by Username Change (Free) - vBulletin Mods & Addons Copyright © 2016 DragonByte Technologies Ltd.
BetaSoft Inc.
Digital Point modules: Sphinx-based search
All times are GMT -8. The time now is 03:38 AM.

Copyright BetaSoft Inc.