Welcome!

AppDynamics the World Leader in APM and DevOps

AppDynamics Blog

Subscribe to AppDynamics Blog: eMailAlertsEmail Alerts
Get AppDynamics Blog via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Blog Feed Post

Top 10 Reasons Your Application Is Running Poorly

image_pdfimage_print

“Hey…the Internet is down” or “the application is really slow” are common problems I’ve heard over the years. As the Ned Stark meme goes, how does one simply fix “it’s slow”? Screen Shot 2014-10-28 at 8.38.03 AM

I’ve been working with enterprise-grade applications for over 10 years now, and I’d like to think I’ve become pretty darn good at it. At AppDynamics, we have an industry-leading APM solution which can pinpoint the root cause of issues nearly instantly and help your team resolve the issue as quickly as possible. So you need to constantly ask your Ops team: what are the problems that plague our most valuable applications? Being a David Letterman fan, I thought I would attempt a Top Ten List of common problems in enterprise software applications.

Full disclosure, this list is not scientific, it’s just based upon experience dealing with customers trying to solve application issues.

  1. Configuration – The wrong Thread Pool or Connection Pool Settings. Not providing enough threads to match large load can cause serious blocking issues and create bottlenecks.
  2. Memory Management – Improper Memory Configuration for the Code Size and Transaction Volume. Improper memory settings can cause excessive garbage collection and REMEMBER, in Java, a “Full Garbage Collection” means ALL THREADS STOP.
  3. Web Services – SOAP based web services have more overall overhead when compared to REST based web services. Did you know know that a simple SOAP web service call that returns a temperature or a zip code requires 1 or 2KB of packaging data? Like shipping a watch in a big box full of foam peanuts. Unnecessary overhead.
  4. Object Relational Mapping – We are really talking about Java and Hibernate Abuse
  5. Application Code – Poorly written code. Make ALL of your developers read Code Complete by Steve McConnell and Implement Unit Testing. Both can great improve the quality of their code.
  6. Input/Output Bottlenecks – storage and network bottlenecks – Ensure your disks are configured for sufficient I/O. You need to make sure you have sufficient I/O configurations, especially in virtual machine and complex environments.
  7. Logging Accidentally left on DEBUG mode – After your major load test, did you leave your logging solution in DEBUG mode? This can create a huge bottleneck that correlates directly with load. However, this problem is pretty sneaky and you won’t discover this issues unless you run a major load test.
  8. Request Overload – We have too many inbound requests coming in and not enough resources to handle the load — simply a bandwidth issue.
  9. Database – It’s probably not the database. Oracle DBA’s typically run a fast databases. SQL Server implementations are typically less tuned for performance.
  10. Database, cont. – It’s probably the database, bad index or just a bad query. Could also be a developer writing a query inside a query. (See Above)

Get help with your application issues, try AppDynamics APM for FREE today!

The post Top 10 Reasons Your Application Is Running Poorly written by appeared first on Application Performance Monitoring Blog from AppDynamics.

Read the original blog entry...

More Stories By AppDynamics Blog

In high-production environments where release cycles are measured in hours or minutes — not days or weeks — there's little room for mistakes and no room for confusion. Everyone has to understand what's happening, in real time, and have the means to do whatever is necessary to keep applications up and running optimally.

DevOps is a high-stakes world, but done well, it delivers the agility and performance to significantly impact business competitiveness.