LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 1
London Appdynamics User Group (LAUG)February 2013 Meetup
Presented by IG
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 2
How AppDynamics isinfluencing our IT culture
Hamed SilataniAugusto Rodriguez
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 3
Contents
• Why is performance important to us?• How we measured performance historically• How AppDynamics is influencing positively:
Ð DevelopmentÐ ArchitectureÐ QAÐ Operations and Support
• Successes and challenges we found
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 4
IG’s context
• We offer Spread Betting and CFD trading
• Trading and price updates are time critical – Every millisecond counts
• Using AppDyanmics in production for 4 months
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 5
Development process
Proactive than reactive approach to performance:• Identifying latency issues in production is too late• Mostly on trading and charting platform
We try to improve the performance on each release
Res
pons
e tim
e
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 6
Development Process
Thinking about monitoring from the start• Influences how we design• It was expensive and focused
Ð Ad-hoc classes to wrap specific transactions and log metrics.Ð Creating custom metric collectors and graphing them.
• Not possible to have it everywhere
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 7
Development Process
Leave metric collection to its experts and focus on our business domain and differentiators.
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 8
Architecture
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 9
Architecture
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 10
QA
• Link Business Transactions to Services• Simpler option to sign-off architectural changes• Provide snapshots on bug reports when a service returns an error.
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 11
QA
• Helps with regression: Business transaction health view easily tells us: Ð What transactions are fundamentally brokenÐ Can’t tell if all transactions are OK
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 12
Operations & Support
Lower the bar to find performance issues• Easier to collaborate with other teams to solve the problem:
Ð focus on the solution.Ð With DBAs - > DB call times
• can pin point performance bottlenecks:Ð Bottlenecks caused by downstream componentsÐ Inefficient code in unfamiliar parts of the platformÐ Thread hogging calling a SAAS provider
• troubleshooting integration with 3rd party software.Ð Messaging broker
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 13
Operations & Support
• BTs enables us to correlate exceptions across nodes
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 14
Operations & Support
Ability to correlate events (cluster, nodes, etc).[gc , cpu]
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 15
Operations & Support
Reduce the number of false positives alerts (Correlation of metrics for alerting).
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 16
Operations & Support
Inventory of JVMs and config (* run reports on jvms)
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 17
Operational successes
• Datacenter failover
• Already used to improve our throughput
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 18
Operational challenges
• No way to promote config changes through environments
• Changes to BTs or metric names invalidates dashboards
• Invest in training to get the most out of it
• To get best of the tool work with Appd engineers
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 19
Going forward
• Doing end user monitoring (web and mobile)• Collect real-time business metrics and KPIs• Use events to mark application version changes• Diff flowmaps• Compare platform performance across all nodes between load tests
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 20
Q & A
LONDON APPDYNAMICS USER GROUP | FEBRUARY 2013 | 21
THANK YOU!