Java IoT Authors: Carmen Gonzalez, John Mertic, Ruxit Blog, Elizabeth White, Yeshim Deniz

Related Topics: Adobe Flex, Java IoT, IoT User Interface

Adobe Flex: Article

Three Tips to Successfully Load Test Adobe Flex Applications

It has become increasingly important to performance test these web applications under different loads

The world has changed dramatically for organizations that use web-enabled business applications in enterprise environments. The complexities of modern applications, which include multi-tiered, globally distributed architectures, SOA and a host of other new technologies, have forced major change in the way enterprises develop, test and manage web-enabled applications. Specifically, Rich Internet Application (RIA) technologies such as Adobe Flex allow a faster, more engaging, interactive experience with browser- enabled applications and services. While an attractive option for developing expanded application capabilities these RIA technologies bring new challenges to organizations that need to deploy application features and functions in a compressed time frame and at a lower cost.

Preparing for the shift as part of this new technology trend, companies must adapt their testing approach as well. Given the way new technologies work when deployed on Onternet/intranet applications, it's important to be careful in approaching the testing of Flex applications. When rolling out next-generation applications on a mission-critical enterprise application platform, you need to be confident that your systems will perform. As load testing is one of the last crucial tasks before launching a web application, it's usually done under pressure and with tight time constraints. Before we discuss tips to make you successful when load testing Adobe Flex applications, first let's look at how Adobe Flex applications are unique.

Adobe Flex applications may be different from applications you've worked with before. For classic HTML web applications, the server does all of the processing. In addition, the rendering of HTML requires full page refreshes. Flex applications are different because content is delivered without having to reload the page. These applications download the Flash client application and run in the browser, or for Adobe AIR applications, on the desktop. The Flash is constantly being updated by the server, asynchronously. For this reason, Adobe Flex server loads reveal a very different profile.

We all know it is important to measure transaction response times when performance testing web appli­cations. But Flex technology can cause significant increases in the number of browser-to-server HTTP calls made in the background and this increase in traffic can have a profound effect on per­formance. While users might not be aware of the round-trips between the browser and a distant server, they will definitely notice performance a problem if the application is slow or doesn't work because of the increased load. Knowing the scalability limitations of your deployments is crucial.

Innovative RIA technologies like Flex present new challenges with respect to emulating a realistic load. If you're developing or deploying applications in this newer technology, successfully addressing these challenges requires thinking about load testing in new ways. Let's look at the new challenges in load testing Flex applications and three tips to improve application performance and enrich the user experience.

Tip 1: Make sure you can decode AMF and process internal identifiers
Adobe's Flex AMF (Action Messaging Format) protocol is used to exchange data between an Adobe Flash application and a database, using a Remote Procedure call. Since the data is in compressed binary format, communication is faster and more efficient than a web service. Older load testing solutions claim they can handle "Flex" technology, but have difficulty doing so in the real world. Many load testing tools rely on data being sent over HTTP and don't tap into the AMF protocol. Therefore, they don't go deep enough to understand what is being exchanged between client and server. For optimum testing, make sure your load testing tool decodes these objects so that you can parameterize the requests, extract data from the response and validate the response. Users should look for automated variable extraction and parameterization, automated comparison features to show changes from one code base to the next and automated documentation of results so test output is immediately actionable by all stakeholders.

In addition, AMF message protocol uses internal identifiers (clientId, DSId, etc.) to maintain the AMF session. Parameters in an AMF session are dynamically generated and are numerous. To avoid painful manual configuration of these parameters, make sure that your load testing tool automatically processes serialized objects and identifiers.

Tip 2: Make sure you can support customized external messages
AMF3 compact binary format helps integrate binary data exchange into all server platforms. The protocol improves the quality of all remote and messaging solutions for Flex and optimizes data exchange. AMF3 reduces the quantity of exchanged information and avoids redundant messages. In particular, AMF3 externalizable messages allow developers to customize the serialization of objects exchanged in AMF.

When selecting a load testing tool, make sure it allows you to integrate custom code into it. For optimum testing, the customized code should be loaded and run by the testing tool to correctly replay custom messages.

Tip 3: Make sure you can support polling and streaming
Many Flex applications require that some data are regularly pushed from the server to the client. Servers using AMF protocol update client data in two ways:

  • The polling method: This is when the browser queries the server at regular intervals. Technically simple in its implementation, the method's downside is that it needlessly overloads the server and is not very reactive. When these applications are recorded with a load testing tool, a high number of browsers to server requests are recorded along with other more significant requests. It's important to make sure your tool can automatically simplify your recording to get a clear maintainable script.
  • The streaming method: In this case, the client sends a single request to the server and the server responds when pertinent information is available, without closing the request. The server can send information to the client again using the same connection, without having to wait for a new request. Using this method, client data can be rapidly updated while network traffic is kept to a minimum. The testing tool must be able to keep the stream open when it plays a streaming request. This request will block the connection so the tool has to use a second connection for classic requests.

In both cases, typical HTTP response times are not useful. For regular HTTP requests, load testing tools measure the time between when the request is sent and when the response is received. It's important that your load testing tool can measure what's really interesting: the time between when the server updates the client and when the client receives the update. Not only should the tool measure this information but this function should be automated so that testing can be done frequently and earlier in the lifecycle.

As more and more companies deploy mission-critical applications on the Internet, it has become increasingly important to performance test these web applications under different loads before they go live. While Adobe Flex provides expanded capabilities to develop new powerful applications in support of organizational needs, the technology is different from other applications. As a result a new approach to load testing is required. To understand how your applications will work in the Adobe Flex production environment, and to optimize them for higher performance, you need be able to simulate not just the actions of one user, but the actions of many users. By implementing the tips in this article, companies can quickly adapt their testing methodology to handle Flex applications, get to market faster and easier than ever before, while improving productivity and saving money.

More Stories By Christophe Marton

Christophe Marton is co-founder of Neotys and co-creator of the development tool NeoLoad. Previously, he worked at Calendra where he developed his expertise in the performance and load testing space, for which he ultimately developed a unique vision for a next generation solution. While at Calendra, he developed software solutions for the identity management market which was later acquired by BMC software in 2005. During his six year tenure at Calendra, he developed the skills required to create, develop and take cutting edge software to market. Marton is a Computer Engineering graduate of ESIL Marseille Engineering School.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

@ThingsExpo Stories
Successful digital transformation requires new organizational competencies and capabilities. Research tells us that the biggest impediment to successful transformation is human; consequently, the biggest enabler is a properly skilled and empowered workforce. In the digital age, new individual and collective competencies are required. In his session at 19th Cloud Expo, Bob Newhouse, CEO and founder of Agilitiv, will draw together recent research and lessons learned from emerging and established ...
The best way to leverage your Cloud Expo presence as a sponsor and exhibitor is to plan your news announcements around our events. The press covering Cloud Expo and @ThingsExpo will have access to these releases and will amplify your news announcements. More than two dozen Cloud companies either set deals at our shows or have announced their mergers and acquisitions at Cloud Expo. Product announcements during our show provide your company with the most reach through our targeted audiences.
Amazon has gradually rolled out parts of its IoT offerings, but these are just the tip of the iceberg. In addition to optimizing their backend AWS offerings, Amazon is laying the ground work to be a major force in IoT - especially in the connected home and office. In his session at @ThingsExpo, Chris Kocher, founder and managing director of Grey Heron, explained how Amazon is extending its reach to become a major force in IoT by building on its dominant cloud IoT platform, its Dash Button strat...
@ThingsExpo has been named the Top 5 Most Influential M2M Brand by Onalytica in the ‘Machine to Machine: Top 100 Influencers and Brands.' Onalytica analyzed the online debate on M2M by looking at over 85,000 tweets to provide the most influential individuals and brands that drive the discussion. According to Onalytica the "analysis showed a very engaged community with a lot of interactive tweets. The M2M discussion seems to be more fragmented and driven by some of the major brands present in the...
We are reaching the end of the beginning with WebRTC, and real systems using this technology have begun to appear. One challenge that faces every WebRTC deployment (in some form or another) is identity management. For example, if you have an existing service – possibly built on a variety of different PaaS/SaaS offerings – and you want to add real-time communications you are faced with a challenge relating to user management, authentication, authorization, and validation. Service providers will w...
DevOps is being widely accepted (if not fully adopted) as essential in enterprise IT. But as Enterprise DevOps gains maturity, expands scope, and increases velocity, the need for data-driven decisions across teams becomes more acute. DevOps teams in any modern business must wrangle the ‘digital exhaust’ from the delivery toolchain, "pervasive" and "cognitive" computing, APIs and services, mobile devices and applications, the Internet of Things, and now even blockchain. In this power panel at @...
SYS-CON Media announced today that @WebRTCSummit Blog, the largest WebRTC resource in the world, has been launched. @WebRTCSummit Blog offers top articles, news stories, and blog posts from the world's well-known experts and guarantees better exposure for its authors than any other publication. @WebRTCSummit Blog can be bookmarked ▸ Here @WebRTCSummit conference site can be bookmarked ▸ Here
SYS-CON Events announced today that Streamlyzer will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. Streamlyzer is a powerful analytics for video streaming service that enables video streaming providers to monitor and analyze QoE (Quality-of-Experience) from end-user devices in real time.
You have great SaaS business app ideas. You want to turn your idea quickly into a functional and engaging proof of concept. You need to be able to modify it to meet customers' needs, and you need to deliver a complete and secure SaaS application. How could you achieve all the above and yet avoid unforeseen IT requirements that add unnecessary cost and complexity? You also want your app to be responsive in any device at any time. In his session at 19th Cloud Expo, Mark Allen, General Manager of...
One of biggest questions about Big Data is “How do we harness all that information for business use quickly and effectively?” Geographic Information Systems (GIS) or spatial technology is about more than making maps, but adding critical context and meaning to data of all types, coming from all different channels – even sensors. In his session at @ThingsExpo, William (Bill) Meehan, director of utility solutions for Esri, will take a closer look at the current state of spatial technology and ar...
SYS-CON Events announced today that SoftNet Solutions will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. SoftNet Solutions specializes in Enterprise Solutions for Hadoop and Big Data. It offers customers the most open, robust, and value-conscious portfolio of solutions, services, and tools for the shortest route to success with Big Data. The unique differentiator is the ability to architect and ...
The IoT industry is now at a crossroads, between the fast-paced innovation of technologies and the pending mass adoption by global enterprises. The complexity of combining rapidly evolving technologies and the need to establish practices for market acceleration pose a strong challenge to global enterprises as well as IoT vendors. In his session at @ThingsExpo, Clark Smith, senior product manager for Numerex, will discuss how Numerex, as an experienced, established IoT provider, has embraced a ...
Cloud based infrastructure deployment is becoming more and more appealing to customers, from Fortune 500 companies to SMEs due to its pay-as-you-go model. Enterprise storage vendors are able to reach out to these customers by integrating in cloud based deployments; this needs adaptability and interoperability of the products confirming to cloud standards such as OpenStack, CloudStack, or Azure. As compared to off the shelf commodity storage, enterprise storages by its reliability, high-availabil...
Donna Yasay, President of HomeGrid Forum, today discussed with a panel of technology peers how certification programs are at the forefront of interoperability, and the answer for vendors looking to keep up with today's growing industry for smart home innovation. "To ensure multi-vendor interoperability, accredited industry certification programs should be used for every product to provide credibility and quality assurance for retail and carrier based customers looking to add ever increasing num...
In the next forty months – just over three years – businesses will undergo extraordinary changes. The exponential growth of digitization and machine learning will see a step function change in how businesses create value, satisfy customers, and outperform their competition. In the next forty months companies will take the actions that will see them get to the next level of the game called Capitalism. Or they won’t – game over. The winners of today and tomorrow think differently, follow different...
“Media Sponsor” of SYS-CON's 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. CloudBerry Backup is a leading cross-platform cloud backup and disaster recovery solution integrated with major public cloud services, such as Amazon Web Services, Microsoft Azure and Google Cloud Platform.
SYS-CON Events announced today that Super Micro Computer, Inc., a global leader in Embedded and IoT solutions, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 7-9, 2017, at the Javits Center in New York City, NY. Supermicro (NASDAQ: SMCI), the leading innovator in high-performance, high-efficiency server technology, is a premier provider of advanced server Building Block Solutions® for Data Center, Cloud Computing, Enterprise IT, Hadoop/Big Data, HPC and ...
Web Real-Time Communication APIs have quickly revolutionized what browsers are capable of. In addition to video and audio streams, we can now bi-directionally send arbitrary data over WebRTC's PeerConnection Data Channels. With the advent of Progressive Web Apps and new hardware APIs such as WebBluetooh and WebUSB, we can finally enable users to stitch together the Internet of Things directly from their browsers while communicating privately and securely in a decentralized way.
For basic one-to-one voice or video calling solutions, WebRTC has proven to be a very powerful technology. Although WebRTC’s core functionality is to provide secure, real-time p2p media streaming, leveraging native platform features and server-side components brings up new communication capabilities for web and native mobile applications, allowing for advanced multi-user use cases such as video broadcasting, conferencing, and media recording.
SYS-CON Events announced today that LeaseWeb USA, a cloud Infrastructure-as-a-Service (IaaS) provider, will exhibit at the 19th International Cloud Expo, which will take place on November 1–3, 2016, at the Santa Clara Convention Center in Santa Clara, CA. LeaseWeb is one of the world's largest hosting brands. The company helps customers define, develop and deploy IT infrastructure tailored to their exact business needs, by combining various kinds cloud solutions.