Intro
Speaker's qualifications
Overall presentation goal
Cost/Benefit Analysis
Aspect Oriented Programming
What is Aspect Oriented Programming?
What is Aspect Oriented Programming?
What is Aspect Oriented Programming?
Modularization
Cross-cutting concerns
A Business Requirement
A Business Requirement
Problem #1: Tangling
Problem #1: Tangling
Problem #2: Scattering
The AOP Solution
The AOP Solution
Using AOP for Performance Monitoring
A Twist
Using AOP and JMX Together
Java Management Extensions
What is Java Management Extensions?
JMX Application Architecture
JMX Application Architecture
Spring JMX Access
JMX Clients
JConsole
Use Case: Performance Monitoring
Use Case: Performance Monitoring
Use Case: Performance Monitoring
Performance Monitoring
Use Case: Performance Monitoring
Performance Monitoring
Use Case: Service Level Agreement
Use Case: Service Level Agreement
Use Case: Service Level Agreement
Service Level Agreement with Notification
Use Case: Service Blocking
Use Case: Service Blocking
Use Case: Service Blocking
Service Blocking
Use Case: Cache Management
Use Case: Cache Management
Use Case: Caching
Cache Management
Use Case: Cache Management
Cache Management with Programmatic Access
Use Case: Maintenance
Use Case: Maintenance
Summary
Summary
Summary
Tools
Don't write code that doesn't make your company money!
In this session, you will explore the technologies of AOP and JMX and how they can be used together to transparently add management and monitoring in a non-invasive way. You will explore aspect oriented programming using Spring's AOP framework and learn how Spring 2.0 allows you to upgrade later if you choose. Next you will explore Spring's JMX abstraction and how it can be used to expose your management and monitoring data to external clients and consume the information using JConsole or Spring.
If you are tentative about introducing AOP or JMX into your application, come take a look at some of the cool things you can do with them and how easy integration can be.
Ben Hale is a Senior Consultant for Interface21, the company behind the Spring Framework and the Spring portfolio. Ben's specialties include middle tier architecture with an emphasis on integration technologies such as JMS and JMX. Leading up to his role at Interface21 Ben has led teams in the architecture and development of large-scale enterprise management applications.