Welcome!

Agile Computing Authors: Pat Romanski, Liz McMillan, Elizabeth White, Yeshim Deniz, Zakia Bouachraoui

Related Topics: @CloudExpo, Java IoT, Agile Computing, @DevOpsSummit

@CloudExpo: Article

Testing Streaming Media | @CloudExpo #APM #IoT #DevOps #BigData

It’s not just for Netflix anymore

Here's the thing: as sure as we'll have another record-setting year for NFL streaming, you can also be sure that apps will fail and streaming services will go down. Whether you are dabbling in streaming or diving in whole-hog, you need to know what to do to give your users the most reliable experience possible. Here are a few tips.

Over the past few weeks, we've seen a ton of 'Back To The Future' themed posts all over social media, as we passed October 21, 2015 - the actual day that Marty and Doc visited in the plot of the second movie of the series. It was a fun time to reflect on what the movie got right about life in "the future," and more comically, what it got wrong.

We don't have hoverboards or hydrating pizzas, but one thing the movie got more of less right was video. Marty's 2015 house is littered with TV screens, controlled by voice, where he can access content on demand or instantly video chat with a manipulative coworker. These things and more happen every day now in the palm of your hand.

What 'Back To The Future 2' never got into (because let's face it, it would've been pretty boring) was how all that video got produced and delivered. We're well beyond just Netflix and YouTube - more and more companies are in the video streaming business these days.

Video Streaming Is Experiencing Explosive Growth
recent AppAnnie study ranked the top video streaming apps, and in this list, you can see the breadth and diversity of industries who are operating streaming video sites. The growth in usage, and even more importantly, revenue, is respectable. In the U.S., revenue is growing 3.2x year-over-year, but in countries like China, it's as high as 9.6x.

Nearly every communications company and cable operator has its own streaming site. So do sports networks that simulcast games around the world, and TV channels that stream clips, episodes, and bonus content.

Here's the thing: as sure as we'll have another record-setting year for NFL streaming, you can also be sure that apps will fail and streaming services will go down.

Tips for Top Video Streaming Performance
Whether you are dabbling in streaming or diving in whole-hog, you need to know what to do to give your users the most reliable experience possible. Here are a few tips.

1) Build It Right: Adaptive Bitrate Streaming
Remember when you had to wait for videos to buffer before being able to watch them? You'd want to watch something, but you'd have to wait 10 minutes while enough of it loaded so it could play continuously through the end.

Fortunately, buffering has largely been eliminated, thanks to both improvements in network capacity and technologies like adaptive bitrate streaming. With adaptive bitrate streaming, the available bandwidth and capacity of the client dictates how much data is sent to you by the server. So a server will start you off with low-quality video if your bandwidth is limited, and then it will fill in the gaps as it can. If you have a small screen, you don't receive as much data. If you hit a bump in the network, it can keep streaming with lower quality so your experience remains uninterrupted. People don't care much if a few seconds of video are fuzzy, but they freak out when the screen freezes 2 yards away from a touchdown.

Adaptive bitrate streaming isn't the only technology worth looking at for better streaming. Read this post and check out a few others.

2) Know Your Peaks
One of the most important things to know about your streaming system is where performance peaks out. You need to know how many users you can support. You can do this by developing a rich load testing process that helps you understand these dynamics.

Run load tests with different levels of hardware and different usage patterns to get a good picture of how much activity you can support. You'll want to play around with different viewing dynamics - for example, run scenarios where people are browsing and viewing lots of different videos, and run other scenarios where a large proportion of the userbase is watching the same thing.

As you understand your thresholds, record those and share them with your Operations team for monitoring purposes. In fact, a strong partnership with Operations is critical, and it's not a bad idea to run some amount of load testing in production because that will give you the most accurate picture of what you can truly support.

3) Monitor Performance
You have to be watching your viewers. Keep your Application Performance Monitoring (APM) solution operating at all times so you know if there are going to be issues. Combined with other basic network & system monitoring software, an APM solution gives you a solid understanding of how your app is holding up at all times.

Synthetic User Monitoring is the best place to start if you don't currently have an APM system in place. Synthetic users simulate the behavior of your users, operating alongside them in the live production environment. You continuously run synthetic user tests to see what kinds of problems your users may be experiencing, before those problems turn into full-scale crashes.

4) Stay on Top of Key Metrics
For traditionally-built streaming applications that use progressive downloading, there are some metrics that are important to track: bitrate, buffer fill, lag length, play length, and lag ratio. These metrics give you a few slices of information that ultimately tell you one thing: does a client have enough bandwidth to consume and process the video stream. You can read more about these metrics here.

If you are using adaptive bitrate streaming, there will be other metrics you'll want to pay attention to, specifically average bitrate (how much data are they getting on average) and startup time (how quickly does the server react to changing information from the client). With adaptive bitrate streaming, your users shouldn't be experiencing any interruptions or delays, however, you'll still want to know if their experience is subpar. These metrics will help you do that.

5) Remember the Ads
Finally, remember that your app doesn't operate in a vacuum. Videos are often streamed with ads on the same page, or other interactive elements from third-party sites. These can impact the user's experience.

No matter how good your infrastructure is, you could be beholden to someone else's. So test the full context of how your users experience your video. Understand how third-party components impact what users do and what users see. The more realistic your testing, the more confident you will be in your app's performance, especially when the pressure is on.

One thing - be cautious about involving live ads in your load test though. If you are heavily testing someone else's ad server, you'll impact the performance of everyone's ads, and that could come back to bite you. You may want to look towards service virtualization for this kind of testing.

Conclusion
In many ways, performance testing for video is no different that performance testing for anything else. However, some of the technologies involved - and certainly the user's expectations for quality - do give video performance testing its own twist.

If you'd like to dive deeper into the technical aspects of performance testing for video streaming, check out our recent post Stream On: How to Address and Avoid Streaming Media Performance Problems.

More Stories By Tim Hinds

Tim Hinds is the Product Marketing Manager for NeoLoad at Neotys. He has a background in Agile software development, Scrum, Kanban, Continuous Integration, Continuous Delivery, and Continuous Testing practices.

Previously, Tim was Product Marketing Manager at AccuRev, a company acquired by Micro Focus, where he worked with software configuration management, issue tracking, Agile project management, continuous integration, workflow automation, and distributed version control systems.

IoT & Smart Cities Stories
According to Forrester Research, every business will become either a digital predator or digital prey by 2020. To avoid demise, organizations must rapidly create new sources of value in their end-to-end customer experiences. True digital predators also must break down information and process silos and extend digital transformation initiatives to empower employees with the digital resources needed to win, serve, and retain customers.
Early Bird Registration Discount Expires on August 31, 2018 Conference Registration Link ▸ HERE. Pick from all 200 sessions in all 10 tracks, plus 22 Keynotes & General Sessions! Lunch is served two days. EXPIRES AUGUST 31, 2018. Ticket prices: ($1,295-Aug 31) ($1,495-Oct 31) ($1,995-Nov 12) ($2,500-Walk-in)
Business professionals no longer wonder if they'll migrate to the cloud; it's now a matter of when. The cloud environment has proved to be a major force in transitioning to an agile business model that enables quick decisions and fast implementation that solidify customer relationships. And when the cloud is combined with the power of cognitive computing, it drives innovation and transformation that achieves astounding competitive advantage.
Machine learning has taken residence at our cities' cores and now we can finally have "smart cities." Cities are a collection of buildings made to provide the structure and safety necessary for people to function, create and survive. Buildings are a pool of ever-changing performance data from large automated systems such as heating and cooling to the people that live and work within them. Through machine learning, buildings can optimize performance, reduce costs, and improve occupant comfort by ...
René Bostic is the Technical VP of the IBM Cloud Unit in North America. Enjoying her career with IBM during the modern millennial technological era, she is an expert in cloud computing, DevOps and emerging cloud technologies such as Blockchain. Her strengths and core competencies include a proven record of accomplishments in consensus building at all levels to assess, plan, and implement enterprise and cloud computing solutions. René is a member of the Society of Women Engineers (SWE) and a m...
IoT is rapidly becoming mainstream as more and more investments are made into the platforms and technology. As this movement continues to expand and gain momentum it creates a massive wall of noise that can be difficult to sift through. Unfortunately, this inevitably makes IoT less approachable for people to get started with and can hamper efforts to integrate this key technology into your own portfolio. There are so many connected products already in place today with many hundreds more on the h...
Digital Transformation: Preparing Cloud & IoT Security for the Age of Artificial Intelligence. As automation and artificial intelligence (AI) power solution development and delivery, many businesses need to build backend cloud capabilities. Well-poised organizations, marketing smart devices with AI and BlockChain capabilities prepare to refine compliance and regulatory capabilities in 2018. Volumes of health, financial, technical and privacy data, along with tightening compliance requirements by...
Charles Araujo is an industry analyst, internationally recognized authority on the Digital Enterprise and author of The Quantum Age of IT: Why Everything You Know About IT is About to Change. As Principal Analyst with Intellyx, he writes, speaks and advises organizations on how to navigate through this time of disruption. He is also the founder of The Institute for Digital Transformation and a sought after keynote speaker. He has been a regular contributor to both InformationWeek and CIO Insight...
Digital Transformation is much more than a buzzword. The radical shift to digital mechanisms for almost every process is evident across all industries and verticals. This is often especially true in financial services, where the legacy environment is many times unable to keep up with the rapidly shifting demands of the consumer. The constant pressure to provide complete, omnichannel delivery of customer-facing solutions to meet both regulatory and customer demands is putting enormous pressure on...
Andrew Keys is Co-Founder of ConsenSys Enterprise. He comes to ConsenSys Enterprise with capital markets, technology and entrepreneurial experience. Previously, he worked for UBS investment bank in equities analysis. Later, he was responsible for the creation and distribution of life settlement products to hedge funds and investment banks. After, he co-founded a revenue cycle management company where he learned about Bitcoin and eventually Ethereal. Andrew's role at ConsenSys Enterprise is a mul...