Push newchallenges

907 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
907
On SlideShare
0
From Embeds
0
Number of Embeds
12
Actions
Shares
0
Downloads
0
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • NeoLoad is our Load Testing tool, and our last version support several push technologies and push frameworks
  • The goal is to talk about the new challenges in push application performances tests.
  • Stock data application developped in JAVA
    Same application in polling and long polling
    Server can handle 250 concurrent users in long polling and more than 1000 in polling
  • Push newchallenges

    1. 1. Neotys Copyright © All rights reserved - 2010 New challenges with push application performance tests
    2. 2. Software provider (ISV) specializing in web application performance tools Founded in 2005 R&D, technical support located in France Operations in the US and Germany Publishes and markets NeoLoad software Strong market acceptance Over 900 clients in more than 60 countries 60% of turnover in export sales Large number of customer references in all verticals 2Neotys Copyright © All rights reserved - 2010 Neotys Profile
    3. 3. Push applications (polling/streaming) Concepts New architectures involve new challenges Server resources Network usage Performance needs Load Testing push application Scenario creation Results analysis Neotys Copyright © All rights reserved - 2010 Summary
    4. 4. Delivering a rich experience to the user More connected More interactive More intuitive Delivering “real time” information Very reactive application New kind of web applications: news headlines, stock tickers, auction updates, gaming 4Neotys Copyright © All rights reserved - 2010 Push applications
    5. 5. Standard HTTP protocol Asynchronous Bi-directional communication Client can send information to the server Server can send information to the client 5Neotys Copyright © All rights reserved - 2010 Push applications
    6. 6. Push applications Neotys Copyright © All rights reserved - 2010 6 Client Server Polling interval Polling interval Event Event Event Polling (pull)
    7. 7. Push applications Neotys Copyright © All rights reserved - 2010 7 Client Server Event Event Event Client Server Event Event Event Long Polling Streaming
    8. 8. Network usage More concurrent sockets open More updates, more bandwidth Server resources More updates, more threads More memory (for threads and clients states) More CPU usage (“6” times) Response time Users expect “real time” updates (300 ms / 5 000 ms) 8Neotys Copyright © All rights reserved - 2010 New architectures involve new challenges
    9. 9. Scenario challenge Record streaming applications Detect streaming requests Handle several responses in a single HTTP server response Must create long polling scenario as well Record polling / long polling applications Lots of polling requests in the scenario Other most significant requests lost in the scenario 9Neotys Copyright © All rights reserved - 2010 Load Testing push application
    10. 10. Scenario challenge Handle push channel Create second execution thread with push request Be able to communicate between push and main thread Framework knowledge Create the scenario automatically Add framework dynamic parameter correlation rules 10Neotys Copyright © All rights reserved - 2010 Load Testing push application
    11. 11. 11Neotys Copyright © All rights reserved - 2010 Load Testing push application Long Polling scenario
    12. 12. Scenario challenge Handle server responses from push channel Several kinds of responses arrive from the push channel Each server response may contain several messages Perform some actions when a specific message arrives Extract data only on known messages 12Neotys Copyright © All rights reserved - 2010 Load Testing push application
    13. 13. 13Neotys Copyright © All rights reserved - 2010 Load Testing push application “Push message” object Automatic split server response in messages Data extraction on specific message Specific action triggered on message
    14. 14. HTTP response times are fairly meaningless Long polling represents update frequency Streaming represents the streaming time Number of responses on the push channel May have several messages in one response May have lots of framework messages or not important messages 14Neotys Copyright © All rights reserved - 2010 Results analysis (Challenges)
    15. 15. Compute message response times Time delay between the moment the server decides to update the client and the moment the client receives the update Client and server clocks need to be synchronized Server update timestamp must be returned within the messages Statistics per specific messages Number of messages received Time when messages arrive Time delay between first client and the last client receive the update 15Neotys Copyright © All rights reserved - 2010 Results analysis
    16. 16. 16Neotys Copyright © All rights reserved - 2010 Questions / Answers

    ×