apm talk

26
© 2015 IBM Corporation © 2015 IBM Corporation Optimize the performance of your enterprise MongoDB applications with IBM APM Timothee Bouhour, Product Manager IBM Application Performance Management

Upload: mongodb

Post on 25-Jul-2015

129 views

Category:

Technology


0 download

TRANSCRIPT

© 2015 IBM Corporation© 2015 IBM Corporation

Optimize the performance of your enterprise MongoDB applications with IBM APMTimothee Bouhour, Product Manager IBM Application Performance Management

© 2015 IBM Corporation

Please note

IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion.

Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision.

The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion.

Symbols used are Copyright of their respective corporations.

Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.

© 2015 IBM Corporation

The Application Economy of the 21st Century

3

Applications not only run the business, but increasingly drive competitive advantage and create new business models

Mobile “apps”Modern workforce expects

constantly updated software to connect to enterprise systems

CloudSoftware can be developed and

hosted in a more flexible, accessible, lower cost manner

Internet Of ThingsThe software component in smart products and devices

enabling value creation through connectivity and insight

Collaboration/SocialConnecting individuals, inside and outside the

organization, to share insights, assets and improve quality

Big DataNew applications provide insights by

interpreting massive quantities of data

InnovationApplications

Customers Business Owners

Dev & Test Operations/ Production

Continuous Delivery

© 2015 IBM Corporation

360° View of the Customer

Mobile & Social Apps Fraud Detection

User Data Management

Content Management & Delivery

Reference Data

Product CatalogsMachine to Machine

AppsData Hub

MongoDB is good for…

© 2015 IBM Corporation

Developers

IT Operations

Lines of Business

Digital Marketer/Strategist

Enable Immediate gratificationInstant access from anywhere

Connect and Collaborate

Low Touch, easy to consumeMinimal coding, lots of mashingContinuously updating to delight, compete

End user experience, Business transactions,Customer experience

management

Infrastructure as CodeManage on and off prem service

SocialMobile

Internet of Things

Cloud

Big Data

Consumer expectations are driving disruption in Application Teams

© 2015 IBM Corporation 6

Applications are critical to business successSlowdowns and outages impact customers, revenue, and reputation

Application Performance Management can keep your apps up and protect your revenue and reputation

E-commerce websitesOne of the largest e-commerce websites in the world experienced twelve outages in a year, impacting their customers and reputation (link)

Financial and customer-impacting applicationsTrading halted for half a day on the biggest US exchange for financial options following an outage caused by software problems (link)

New technology and mobile applicationsCustomers poured out their wrath via social media after the largest video streaming company had an over 20-hour outage on Christmas Eve (link)

© 2015 IBM Corporation 7

Without Application Performance Management With Application Performance Management

1. You don’t know there is a problem until your users complain

1. Identify performance issues

2. It’s hard to figure out where the problem is occurring

2. Isolate where the problem is occurring

3. Finding the cause and resolving a problem costs time, people, and resources

3. Find the root cause of the problem

When there is an outage or a slowdown, users are affectedBut it’s often next to impossible to figure out what’s going wrong

???

??

© 2015 IBM Corporation 8

Find the root cause of the problem down to the line of code diagnose problems 90% faster

Identify performance issues before they affect your users improve availability by 60-90%

Isolate where the problem is occurring by visualizing bottlenecks reduce outages by 50% or more

Reduce your costs with SaaS deployment improve TCO by up to 45%

1

2

3

Application Performance Management Helps you keep your users happy and your revenue flowing

© 2015 IBM Corporation 99

What clients say• Videotron enables sustained service delivery,

fosters business growth and protects the company’s image by implementing transaction tracking to monitor its end user experience. Simulating transactions helps the client avoid incidents that could be damaging to the company. Videotron – a cable, mobile and Internet Service provider

• “Many times a problem was found before it hit our clients” Lajos Tancsik, Head of IT operations, CIB Bank

The features

• End User Experienceget information straight from the browser about who your users are and how their experience is

• Infrastructure monitoring know the status of all your components and when one is starting to fail

• Predictive Insights Be warned of an application outage before is occurs

How they help

• When you have a problem, you can resolve it before your customers notice and complain!

Identify performance issues before they affect your users improve availability by 60-90%1

© 2015 IBM Corporation 1010

What clients say• China Everbright Bank gained an

efficient, scalable management platform for end-to-end transactions monitoring. They can now quickly and easily detect, diagnose and isolate transaction issues, enabling faster troubleshooting and avoiding potential risks - enabling them to reduce operating and maintenance costs and enhance user satisfaction.China Everbright Bank

The features

• Transaction tracking See what happens in your environment every time a user initiates a transaction

How they help

• Identify at a glance where the problematic pieces of a transaction are (the “bottleneck”)

Isolate where the problem is occurring by visualizing bottlenecks reduce outages by 50% or more2

© 2015 IBM Corporation 11

Find the root cause of the problem down to the line of code diagnose problems 90% faster 3

11

What clients say• Streamlining and centralizing processes

helps us accelerate delivery of channel usage analytics by 60%.Barclays Bank

The features

• Line of Code Diagnostics – drill down into a problem until you find what is behind it

How they help

• Find the root cause fast whether it’s a failing component of your app, a slowly responding database query, or a poor performing line of code

© 2015 IBM Corporation 12

How does APM work and what do you need to do?

End usersWeb Servers App Servers Databases

agent agent agent

APM Backend

You install our “agents” on the different pieces of your applications.

These agents collect key data and send it back to our APM “backend”

The APM backend then analyzes the data and provides the users with useful dashboards in the APM User Interface (APM UI)

Devices

© 2015 IBM Corporation 13

Huge Breadth of Coverage and still expanding

See our full coverage

© 2015 IBM Corporation

IBM Performance Management for MongoDB monitors…. Availability of the MongoDB cluster,

replication set, and single instances

Shard statistics, indexing statistics

Holding and acquiring lock times of read and writes to each database on each MongoDB process

Disk usage by collections, used connections

Detailed response time breakdown for MongoDB daemons and operation types.

© 2015 IBM Corporation

The next step – IBM Service EngageLearn, Explore, Try and Buy IBM Application Performance Management

© 2015 IBM Corporation© 2015 IBM Corporation

Thank You@[email protected]

Backup – Demo

© 2015 IBM Corporation

The Application Owner logs into the IBM Performance Management tool to diagnose the root cause of the problem. He notices the web response time of the HR app trending upward. He notices there are some critical events.

© 2015 IBM Corporation

On the events panel there are a few events for Ruby that indicate a high response time on the GET and PATCH requests for the “Profiles” page of the HR application. He clicks on an event to go to the Ruby dashboard.

© 2015 IBM Corporation

On this dashboard he sees various metrics that are being displayed about Ruby. By sorting the response time list, he can see the slowest requests. In order to diagnose further he hits the “Diagnose” link

© 2015 IBM Corporation

The Diagnose link takes him to a view that gives him code level visibility. He can see the exact Ruby class and method that is causing the slow GET/PATCH requests for the “Profiles” page. He finds out that the “ProfilesController.Update” method is taking a very long time. Being the application owner he knows that the Update method is the one that makes the heavy calls to update data in the MongoDB database.

© 2015 IBM Corporation

He now clicks on the MongoDB dashboard to see what’s going on thereOn the MongoDB dashboard there are various metrics related to the health of the MongoDB database. He clicks on the “profiles” collection related to the “Profiles” page

© 2015 IBM Corporation

The shard statistics of the “profiles” collection indicates that his shards are unbalanced both in object and data size percentage. This proves that his shard key is causing the bad response time; one shard has to do a large amount of the work.

© 2015 IBM Corporation

There is various other information indicating problems like lock times increasing, memory usage and virtual memory usage increasing for the MongoDB database. The Operations widget shows that the Update and GetMore operations are taking very long

© 2015 IBM Corporation

I/O information shows data access information

© 2015 IBM Corporation

Database lock information gives us lock times for holds and acquires