Learn which costs are related to your application's performance.
In this post, I’ll show the main costs related to performance and why monitoring the database layer is the best option in order to save these costs.
80% of the performance problems are caused by improperly coded database applications. — Craig S Mullins, Database & Procedures
First of all, I would like to show some interesting data from a research entitled "Application Performance starts with Database Performance Analysis" by a research company called Gleanster:
- 71% of respondents indicated their current application performance management tools provide hints, but rarely identify the root of problems;
- 88% pointed to the database as the most common and challenging issue when it comes to performance;
- 90% of APM tools in the market focus exclusively on application layer;
- In 76% of cases, manual work is still needed to identify the root cause of the problem.
According to this research, there is a subcategory of APM (Application Performance Management) called ADPM (Application/Database Performance Management) and Nazar was built on top of this logic: databases are the secret sauce when speaking of application performance.
Based on that, it's easy to prove that investing in ADPM has a return not only financially speaking but also on the efficiency of your business operation, team productivity and infrastructure optimization according to the list below:
ADPM — Return On Investment
1. Infrastructure Costs
Our customers save an average of 40% on infrastructure spending. In some cases, the economy reaches 90%.
“We hired the services of NAZAR aiming to improve the performance of our database. We were pleased with the result, achieving a drastic reduction in load, making it possible to reduce 40% of AWS infrastructure costs.” — Reginaldo Stocco, CEO at VHSYS
“When we started monitoring the database’s server, we could see in the report that 2 queries were responsible for almost 100% of the database’s resources usage. After optimizing those two commands (with some little changes) the CPU usage fell drastically. Now we have a db.t2.small RDS instance with minimal CPU utilization (around 2%), with the same amount of users and paying less than 8% of what we used to pay.” — Vinicius Heimbeck, Founder at Upbeat Games
*You can see more details about the testimonials above here and here.
This is due to the fact that it is a common practice for IT teams to solve performance problems by hiring more computing power. We call this “throwing machine at the problem”. This measure may mask your problem which, in the future, will again come to the surface. In most of the cases the root cause of the problem was not identified, nor was it resolved.
Because of this, companies use resources with capacity beyond what they really need, which means more costs. With a continuous monitoring and frequent optimizations, you can lower the need for computing power without compromising the performance of your application.
2. Team's Performance
There are some researches showing that developers spend too much time fighting the fires (debugging, profiling, performance tuning) instead of building solutions. As every company is now a kind of software business, developers (technology) are in the heart of any corporation so making their work easier will benefit the whole business.
Metrics such as CPU, memory usage, IOPs are considered symptoms of the performance problems. Based on our own monitoring methodology, you do not need to monitor these metrics to identify the root cause of performance problems. By monitoring only the commands executed on the database server you'll able to identify what is actually causing the performance problem and the IT staff will know exactly where to act to fix the problem.
Remember that is nearly 10x cheaper to fix a bug during the QA testing phase than if found in Production.
3. Application's Performance
Nowadays, performance is considered a functionality of your product / service by users. The poor performance of your application can compromise your entire operation and cause significant financial losses.
“We at Paneas had a great experience with NAZAR. In an environment of more than 3 million automated contacts per day, NAZAR has helped us to keep our data environment always balanced, efficient and robust, without mystification and with a realistic and adequate economic vision.” — Danilo Muhrbach, Cloud Computing Solutions Specialist at Paneas.
We have multiple customers in the e-commerce industry and you can imagine how critical it is for them their end users experience when navigating in their platform. Any slowdown can make the user to stop navigating the site (loss of transactions), and even worse, go to a competitor’s site that treats performance as a priority and converts that client.
4. Unavailability
Downtime can cost a lot to your business. Again, in an e-commerce site, for example, any slowness in the site can lead to abandonment of the same by the user which is very common in commemorative dates like “black friday”. How about your app becoming unavailable?
“Fortune 1000 companies spend between $1.25 billion and $2.5 billion every year in annual unplanned application downtime costs." — DevOps.com
Proactive monitoring helps you identify issues before they escalate and become more critical to your operation. IT teams need the ability and tools to quickly identify issues and take corrective action before it is too late.
One of our new customers, which transacts more than R$1B annually of bus trip tickets through its platform, has recently faced performance issues that took its application off the air during peak business hours for two consecutive weekends. After starting to monitor his database, we could quickly identify what was causing the problem and fix it. Therefore, the cost of downtime may be the most critical cost that you should be considering as it can compromise the entire operation of your business.
“Every 100 ms increase in load time of Amazon.com decreased sales by 1%.” — Amazon.
5. Preventing Performance Problems
This one is not exactly a cost but a tip on how to avoid performance related costs. The speed in identifying and adjusting a performance problem has a significant impact on time and money. As said before is estimated that a problem identified in the testing phase costs 10x less than if it is identified in the production phase.
That's why it is important to have an ADPM solution that offers a continuous monitoring without compromising the performance itself. The familiarity that the team has with the environment, as a result of continuous monitoring, allows a faster identification of the issues and more efficient solutions.
“For 2 months, we were facing a problem of high CPU usage peaks. Three thousand coupons were being issued per second. By using Nazar, in a few hours we could identify the problematic query and were able to finally fix the problem. The tool simply helps us to identify the critical queries that need to be optimized.” — Lionardo Nogueira, CTO na Cuponeria
Investing in the prevention of performance problems is important because you're paying for the peace of mind for you and your clients in the future.
The medicine is always more expensive than avoiding the disease.
Conclusion
It is common to say that every business is or depends on software (“Software is eating the world” says Marc Andreessen) and that's why reliability and performance became critical for every company, regardless of its size.
Because most of the APM (Application Performance Management) tools available in the market focus on the application layer and large enterprises (Enterprise market), we at Nazar have decided to make it affordable for companies of any size (from startups to large companies) a solution that empowers Devs, DBAs and Sysadmins in order to identify the causes of performance problems and keeping their apps running fast.
By doing that you'll be saving every cost listed in this post for sure. ROI is guaranteed.