Date post: | 21-Nov-2014 |
Category: |
Education |
Upload: | arvind-krishnaa |
View: | 517 times |
Download: | 2 times |
Design and Implementation of a ServiceMonitoring Console within a Service Oriented
Architecture Framework
Arvind Krishnaa .J31508104017
Guided By
Dr. Chitra BabuHOD/CSE
SSN College of Engineering
Third Review - 04th April, 2012
Ebay’s SOA Framework
1 Client Runtime - Client application code written by theconsumers of the service. Service InvocationFramework(SIF)
2 Server Runtime - Deployment platform for developers topublish web services. Service Provider Framework (SPF)
3 CodeGen - Generate boiler-plate code for deploying services aswell as their consumers.
Ebay’s SOA Framework
1 Client Runtime - Client application code written by theconsumers of the service. Service InvocationFramework(SIF)
2 Server Runtime - Deployment platform for developers topublish web services. Service Provider Framework (SPF)
3 CodeGen - Generate boiler-plate code for deploying services aswell as their consumers.
Ebay’s SOA Framework
1 Client Runtime - Client application code written by theconsumers of the service. Service InvocationFramework(SIF)
2 Server Runtime - Deployment platform for developers topublish web services. Service Provider Framework (SPF)
3 CodeGen - Generate boiler-plate code for deploying services aswell as their consumers.
Architecture of the SOA framework
Figure 1: Architecture of the SOA framework
Where does services monitoring fit in?
1 Develop a service or a consumer to a service using the EclipseSOA plugin
2 Deploy the service on an application server
3 The service logs the metrics onto the Central ApplicationLogging Framework
4 CAL - an aggregator for critical metrics, acting as the focalpoint for generating custom reports
Where does services monitoring fit in?
1 Develop a service or a consumer to a service using the EclipseSOA plugin
2 Deploy the service on an application server
3 The service logs the metrics onto the Central ApplicationLogging Framework
4 CAL - an aggregator for critical metrics, acting as the focalpoint for generating custom reports
Where does services monitoring fit in?
1 Develop a service or a consumer to a service using the EclipseSOA plugin
2 Deploy the service on an application server
3 The service logs the metrics onto the Central ApplicationLogging Framework
4 CAL - an aggregator for critical metrics, acting as the focalpoint for generating custom reports
Where does services monitoring fit in?
1 Develop a service or a consumer to a service using the EclipseSOA plugin
2 Deploy the service on an application server
3 The service logs the metrics onto the Central ApplicationLogging Framework
4 CAL - an aggregator for critical metrics, acting as the focalpoint for generating custom reports
SOA Metrics Dashboard (SMC)
Figure 2: Overview of SOA Metrics Dashboard
Metrics collection in SMC
Issues in SMC
1 Outdated V4 technology for constructing the GUI
2 Very slow!
3 Code is highly monolithic with several metric parametershard-wired into the code
4 Difficult to develop further, as well as difficult to move it to amore efficient mechanism
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
Design goals for the services dashboard
1 Monitoring metrics of services in a modular and looselycoupled-manner
2 Fast response time of the UI layer
3 UI design using a scalable framework
4 Ability to handle large number of services
5 Continuous availability of the service
6 Real-time metrics gathering
7 Extensibility over exhaustive features
What is Turmeric? What is TMC?
Turmeric: Part of the eBay SOA framework is open-sourced, andthis environment is called Turmeric
I Services and consumers can be created uing the open-sourceplugin
I Define type libraries, error libraries for re-use acrossapplications
Turmeric Monitoring Console: The open-source equivalent ofSMC
Architecture of the Monitoring Console
1 Can be abstracted to two frameworks running in parallel -metrics logging framework and metrics handler framework
2 Both frameworks are web services deployed on an applicationserver
3 SOA Query Metrics Service (sqms) - Logging logging handlerframework
4 SPFServlet is the main servlet which handles the requests tothe Turmeric runtime.
5 Initializes the metrics logger for logging metrics published byTurmeric services.
6 Monitoring Console (console) - Metrics handler framework
Architecture of the Monitoring Console
1 Can be abstracted to two frameworks running in parallel -metrics logging framework and metrics handler framework
2 Both frameworks are web services deployed on an applicationserver
3 SOA Query Metrics Service (sqms) - Logging logging handlerframework
4 SPFServlet is the main servlet which handles the requests tothe Turmeric runtime.
5 Initializes the metrics logger for logging metrics published byTurmeric services.
6 Monitoring Console (console) - Metrics handler framework
Architecture of the Monitoring Console
1 Can be abstracted to two frameworks running in parallel -metrics logging framework and metrics handler framework
2 Both frameworks are web services deployed on an applicationserver
3 SOA Query Metrics Service (sqms) - Logging logging handlerframework
4 SPFServlet is the main servlet which handles the requests tothe Turmeric runtime.
5 Initializes the metrics logger for logging metrics published byTurmeric services.
6 Monitoring Console (console) - Metrics handler framework
Architecture of the Monitoring Console
1 Can be abstracted to two frameworks running in parallel -metrics logging framework and metrics handler framework
2 Both frameworks are web services deployed on an applicationserver
3 SOA Query Metrics Service (sqms) - Logging logging handlerframework
4 SPFServlet is the main servlet which handles the requests tothe Turmeric runtime.
5 Initializes the metrics logger for logging metrics published byTurmeric services.
6 Monitoring Console (console) - Metrics handler framework
Architecture of the Monitoring Console
1 Can be abstracted to two frameworks running in parallel -metrics logging framework and metrics handler framework
2 Both frameworks are web services deployed on an applicationserver
3 SOA Query Metrics Service (sqms) - Logging logging handlerframework
4 SPFServlet is the main servlet which handles the requests tothe Turmeric runtime.
5 Initializes the metrics logger for logging metrics published byTurmeric services.
6 Monitoring Console (console) - Metrics handler framework
SOA Query Metrics Service (SQMS)
Figure 3: Architecture of SQMS
Look at the future - Services Portal
SOA framework at a good maturity level; it is now necessary tohave a single portal for monitoring several aspects of theframework.
1 Ad-hoc querying: Using the data aggregator script
2 Detailed View: Pre-built reports from ad-hoc queries on themetrics, such as
I Dependent services across multiple levelsI Dependent SQL queriesI The respective pools on which the consumer/service resideI Performance trends of the individual services/URLs hosted on
the given pool in terms of their throughput/hits andresponse-time over a period of time
I System metrics trends (e.g., CPU, memory, garbage collection,errors, and etc.)
Other contributions at eBay
1 SifRouting Web : Determine the physical locations of a logicalURL, displaying details about it like the pool the service isdeployed in, its namespace and so on.
2 Identifying list of services depending on JAXB : Parsing theXML file containing the list of projects across all pools, andexamining each project individually
3 Determining Service URLs for services from invokerconfiguration bean: To enable an unconventionalload-balancing feature