Welcome!

@DevOpsSummit Authors: Zakia Bouachraoui, Pat Romanski, Liz McMillan, Elizabeth White, Yeshim Deniz

Related Topics: @DevOpsSummit, Open Source Cloud, Containers Expo Blog

@DevOpsSummit: Blog Post

Research Findings: App Performance and Monitoring | @DevOpsSummit #APM #Agile #DevOps

594 IT professionals responded to DZone’s 2016 Performance and Monitoring survey

After surveying nearly 600 IT professionals for our latest Performance & Monitoring research guide, we found some very interesting takeaways and data points. Here is a breakdown of the demographics of those who responded:

  • The top three industries in which the survey takers work are Software Vendors (22%), Finance/ Banking (14%), and E-Commerce/Internet (9%)
  • The primary roles included Developer Team Leads (39%) and Development/Engineering roles (36%)
  • 26% work at a company with more than 500 people; 22% work where there are more than 10,000 employees
  • 41% of respondents work at companies whose headquarters are located in Europe; 32% in the USA
  • Respondents have years of experience as IT professionals, with 51% having over 15 years' experience

Here are the key research findings:

Software and Infrastructure Still Have Frequent Performance Problems
When asked about the last time they solved a performance problem in their software, most respondents (26%) answered that they had done so "this week," which was a similar result compared to 2015's survey. The second most popular answer this year was "in the last 3 months" at 23%, followed by "in the last two weeks" at 17%. All in all, 81% of respondents answered "in the last 3 months" or less, showing that software still has frequent performance problems that developers need to address. Application code (43%) remains the area of the technology stack that tends to have the highest frequency of performance issues, while malware remains the one with little to no issues, where 61% of respondents had either very few issues or none at all.

Respondents were also asked to note the last time they had to solve a performance problem in their infrastructure, and the majority (21%) said "in the last three months" followed by "this month" at 17%, and "this week" at 14%. Compared to 2015's survey results, where the most respondents (19%) noted "over a year ago" as the last time they worked on infrastructure performance problems, there is a clear shift to having more frequent performance problems that require immediate attention.

Databases Pose a Challenge; Finding the Root Cause Remains an Issue
There was another shift this year in the technology stack that tends to have the hardest-to-fix performance issues. In 2015, networks (now in 4th in 2016 at 46%) had the most challenging performance issues to fix, whereas this year 51% of the respondents noted that database performance issues were the toughest to fix. The survey takers also listed workload (49%) and application code (47%) as having hard-to-fix performance issues. In contrast, 32% of respondents said that failing/old hardware was the easiest to fix performance challenge, replacing last year's easiest issue to fix: malware.

As applications become more advanced, so do the causes of the issues. Over half (52%) of the survey takers said that finding the root cause of an issue remains the most time-consuming part of fixing a performance-related problem. There does not appear to be any improvement in optimizing this process, as it was also the most time-consuming component in 2015's survey. Another time-consuming aspect includes collecting and interpreting various metrics (36%). On the other end of the spectrum, the least time-consuming component of fixing a performance-related issue remains communication/managing people.

Even though finding the root cause of a problem is the most time consuming component of fixing a performance related issue, the majority (54%) of respondents noted that it takes an average of less than a week for their team to solve a performance related problem. These problems-particularly encountering database related problems such as slow database queries (33%), and too many database queries (27%)-were, on average, encountered on a monthly basis. On the opposite end, 46% of the respondents said they rarely remain in the dark about the root cause of an issue.

Monitoring Tools and Application Logs Are Key
As a whole, respondents said that monitoring tools (32%) discovered the most performance issues. If systems are being monitored and reviewed consistently, then they tend to catch more performance issues than any of the other tools. Those who do not rely on monitoring tools run performance tests to discover performance issues, with 22% of respondents favoring this. Only 8% of the survey takers credited dumb luck for discovering performance issues.

Much like 2015, this year's respondents also favored application logs, as 89% of them said that these were one of the main tools their teams use to find the root cause of a performance problem. The second most commonly used tool for finding the root cause of a performance issue are database logs, with 68% of respondents relying on them. Monitoring, logging, and tests are three of the key components used to help discover problems early enough to fix them before they begin to negatively affect an application's performance.

Simultaneous User Loads Vary for Apps, Few Servers Are Used, and Parallel Execution Is an Afterthought
The answers were pretty evenly split amongst the options when the survey takers were asked what the max simultaneous user load is for the main application their team works on. The majority - only 17% -  said they use 1,001 - 5,000; 13% use 101 - 500; and 12% use 21 - 100. When asked how many servers they use at their organizations, 38% of the respondents said they use fewer than 20 (this included IaaS and on-premises servers).

Over half (57%) of the developers surveyed do not regularly design their programs for parallel execution. When asked which parallel programming frameworks, standards, and APIs they use, 47% said they often used Executor Service (Java), while 33% occasionally use ForkJoin (Java) and 29% occasionally use Web Workers (JavaScript). As for parallel algorithm design techniques used, 63% most often use load balancing. 81% of respondents often use multithreading as their parallel programming model of choice. The respondents noted that they run into concurrency issues (race conditions, thread locks, mutual exclusion) only a few times a year.

Application Performance Is Still Secondary, Though Awareness of It Is Growing
The majority of respondents (56%- though down from 62% in 2015) said that they build their application functionality first, and then they worry about performance. More people this year have performance in mind from the start when building applications, as 41% said that they build performance into the application from the start, which is up from 35% in 2015.

When it comes to monitoring tools used within their organizations, respondents noted that they use many different tools, with 36% using Nagios, 22% LogStash, and 21% using their own custom/homegrown tools. Furthermore, organizations are comfortable with the tools they currently use-60% of respondents said that they are not looking to switch to a new performance monitoring tool within the next 6 months. They also mainly use free and open-source tools, with 56% of respondents preferring this.

Performance Management Is Moving in Aa Positive Direction
Although IT professionals have begun to put more emphasis on the importance of performance monitoring and testing, there are still some challenges that they face. The respondents said that the top challenge in IT infrastructure performance management (58%) is that the staff is spending too much time in firefighting and manual processes. The second biggest challenge, at 49%, is the lack of actionable insights to proactively solve issues. And the third biggest challenge, with 47% of respondents, was the rising cost and complexity of managing heterogeneous IT environments. With the increased and more streamlined use of performance monitoring tools, these challenges will be minimized.

Another component that can be adding to the abovementioned challenges is the separation of development and operations. According to the survey, 61% of respondents said that Dev and Ops have their metrics gathered in separate siloes. Though this is still the majority, this is down slightly from 64% in 2015. The more information is combined and shared amongst teams, the more streamlined performance management will be.

For the full research guide and other insights into performance and monitoring, please visit: https://dzone.com/guides/performance-and-monitoring.

More Stories By John Esposito

John Esposito is Editor-in-Chief at DZone, having recently finished a doctoral program in Classics from the University of North Carolina. In a previous life he was a VBA and Force.com developer, DBA, and network administrator. John enjoys playing piano and looking at diagrams, and raises two cats with his wife, Sarah.

@DevOpsSummit Stories
When building large, cloud-based applications that operate at a high scale, it’s important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. “Fly two mistakes high” is an old adage in the radio control airplane hobby. It means, fly high enough so that if you make a mistake, you can continue flying with room to still make mistakes. In his session at 18th Cloud Expo, Lee Atchison, Principal Cloud Architect and Advocate at New Relic, will discuss how this same philosophy can be applied to highly scaled applications, and can dramatically increase your resilience to failure.
"DevOps is set to be one of the most profound disruptions to hit IT in decades," said Andi Mann. "It is a natural extension of cloud computing, and I have seen both firsthand and in independent research the fantastic results DevOps delivers. So I am excited to help the great team at @DevOpsSUMMIT and CloudEXPO tell the world how they can leverage this emerging disruptive trend."
Digital transformation is about embracing digital technologies into a company's culture to better connect with its customers, automate processes, create better tools, enter new markets, etc. Such a transformation requires continuous orchestration across teams and an environment based on open collaboration and daily experiments. In his session at 21st Cloud Expo, Alex Casalboni, Technical (Cloud) Evangelist at Cloud Academy, explored and discussed the most urgent unsolved challenges to achieve full cloud literacy in the enterprise world.
CloudEXPO | DevOpsSUMMIT | DXWorldEXPO Silicon Valley 2019 will cover all of these tools, with the most comprehensive program and with 222 rockstar speakers throughout our industry presenting 22 Keynotes and General Sessions, 250 Breakout Sessions along 10 Tracks, as well as our signature Power Panels. Our Expo Floor will bring together the leading global 200 companies throughout the world of Cloud Computing, DevOps, IoT, Smart Cities, FinTech, Digital Transformation, and all they entail. As your enterprise creates a vision and strategy that enables you to create your own unique, long-term success, learning about all the technologies involved is essential. Companies today not only form multi-cloud and hybrid cloud architectures, but create them with built-in cognitive capabilities.
DevOpsSUMMIT at CloudEXPO, to be held June 25-26, 2019 at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real results. Among the proven benefits, DevOps is correlated with 20% faster time-to-market, 22% improvement in quality, and 18% reduction in dev and ops costs, according to research firm Vanson-Bourne. It is changing the way IT works, how businesses interact with customers, and how organizations are buying, building, and delivering software.