Sep 29 2008

Load test Flex and LiveCycle Data Services enabled applications

Disease:
You have built an amazing cool and data intense Rich Internet Application with Adobe Flex and expect many users to work with your application. Suddenly you get concerned; how will the server behave when hundreds or even thousands of users visit your site?

Prescription:
Some more background on this problem first; You probably know that a server in production will behave differently when interacting with a RIA than compared to serving traditional HTML apps that you have been building before.  This is mainly because UIs are not generated on the server any more. Though on the other side, there is probably increased data exchange between the client and server and most of all…. ideally you use the ActionScript Message Format (AMF) and Data Management cause it is easier to develop or faster on the client.  But how does it impact the server, can it handle the load and do traditional load testing tools still work?

LiveCycle Data Services Stress Testing Framework admin UI screenshot

Adobe currently hosts the LiveCycle Data Services Stress Testing Framework on Adobe Labs which addresses lots of these questions. The framework helps developers that use LiveCycle Data Services ES 2.6 to load test the server-side implementation of their LCDS applications. The page is stuffed with information on how to use the Framework so definitely spend some time going through all the details. The Data Services Stress Testing Framework is currently in beta form, but available for testing and evaluation. You can download and test the framework and we obviously hope you will provide us your feedback through the Adobe Labs page.

Tips to stay healthy:
The stress / load testing problem itself has been around for long, and many software vendors have created solutions to help web developers test their servers for large rollouts. However, most of these solutions are still based on the traditional HTML web metaphor and do not work well with AMF. Also, the Data Services Stress Testing Framework currently does not support BlazeDS or other AMF server implementations. Adobe is currently working with a number of testing tool vendors to implement all of the data transport protocols available in Flash. It seems that Borland’s SilkPerformer is one of the first to have AMF3 support. I have not worked with it myself and would love your feedback. Obviously if you know of other tools that are useful for load testing your Flex applications, feel free to leave a comment!

ps: I heard internally that we are working on a new Capacity Planning Guide for LiveCycle Data Services ES 2.6 whitepaper, but it has not yet been finalized. I assume it will be posted in the coming weeks on the LiveCycle Development Center so stay tuned.

UPDATE: You can download the Capacity Planning Guide for LiveCycle Data Services 2.6 from www.adobe.com/go/lcds26_cap_planning_guide.

4 responses so far

4 Responses to “Load test Flex and LiveCycle Data Services enabled applications”

  1. Marcel Panseon 01 Oct 2008 at 2:45 pm

    I just did a load test on our flex application. Our backend is written in java and the flex client communicates over AMF3 with BlazeDS in our java backend. The way i load tested it was simply by using JMeter. JMeter lets you set up a proxy and records all data that goes through the proxy. I simply recorded a few steps, like login, search, open details, etc. JMeter lets you play your recorded AMF and scale it up with multiple sessions/threads/loops and push your server to the max. I must say it was really simple to set up and exactly the same as you would do with a traditional html application. The only difference is you can’t simply change the data samples you recorded because it is in binary format.

  2. Waldo Smeetson 01 Oct 2008 at 6:15 pm

    Hi Marcel, I wasn’t aware of this tool. Thanks for mentioning it!

  3. [...] Services 2.6 has been published on the Adobe site. A document like this was asked for a few times during a DrLiveCycle consult, so it seems very welcomed by Flex developers leveraging Adobe [...]

  4. KL Smithon 18 Nov 2008 at 9:43 pm

    For Marcel Pense……

    I’ve tried setting up JMeter to listen in on the AMF3 messages but I can’t seem to capture them. Any pointers? How did you setup jMeter? It seems that the AMF protocol is getting completely filtered out….

Trackback URI | Comments RSS

Leave a Reply