Final review presentation
Upcoming SlideShare
Loading in...5
×
 

Final review presentation

on

  • 937 views

 

Statistics

Views

Total Views
937
Views on SlideShare
932
Embed Views
5

Actions

Likes
0
Downloads
13
Comments
0

2 Embeds 5

http://www.linkedin.com 4
https://www.linkedin.com 1

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Final review presentation Final review presentation Presentation Transcript

  • Design and Implementation of a ServiceMonitoring Console within a Service Oriented Architecture Framework Arvind Krishnaa .J 31508104017 Guided By Dr. Chitra Babu HOD/CSE SSN College of Engineering Final Review - 16th April, 2012
  • What is Turmeric? What is TMC? Turmeric: Part of the eBay SOA framework is open-sourced, and this environment is called Turmeric Services and consumers can be created using the open-source plugin Define type libraries, error libraries for re-use across applications Turmeric Monitoring Console: The open-source equivalent of SMC (eBay’s internal monitoring console)
  • Turmeric SOA Framework 1 Client Runtime - Client application code written by the consumers of the service. Service Invocation Framework(SIF) View slide
  • Turmeric SOA Framework 1 Client Runtime - Client application code written by the consumers of the service. Service Invocation Framework(SIF) 2 Server Runtime - Deployment platform for developers to publish web services. Service Provider Framework (SPF) View slide
  • Turmeric SOA Framework 1 Client Runtime - Client application code written by the consumers of the service. Service Invocation Framework(SIF) 2 Server Runtime - Deployment platform for developers to publish web services. Service Provider Framework (SPF) 3 CodeGen - Generate boiler-plate code for deploying services as well as their consumers.
  • Architecture of Turmeric Platform Figure 1: Architecture of Turmeric framework
  • Where does services monitoring fit in? 1 Develop a service or a consumer to a service using the Eclipse SOA plugin
  • Where does services monitoring fit in? 1 Develop a service or a consumer to a service using the Eclipse SOA plugin 2 Deploy the service on an application server
  • Where does services monitoring fit in? 1 Develop a service or a consumer to a service using the Eclipse SOA plugin 2 Deploy the service on an application server 3 The service logs the metrics onto the Central Application Logging Framework
  • Where does services monitoring fit in? 1 Develop a service or a consumer to a service using the Eclipse SOA plugin 2 Deploy the service on an application server 3 The service logs the metrics onto the Central Application Logging Framework 4 CAL - an aggregator for critical metrics, acting as the focal point for generating custom reports
  • Purpose of this Monitoring Console 1 Derive business intelligence about various services
  • Purpose of this Monitoring Console 1 Derive business intelligence about various services 2 Identify poorly performing/misbehaving services
  • Purpose of this Monitoring Console 1 Derive business intelligence about various services 2 Identify poorly performing/misbehaving services 3 Find out which errors are being caused in each service
  • Purpose of this Monitoring Console 1 Derive business intelligence about various services 2 Identify poorly performing/misbehaving services 3 Find out which errors are being caused in each service 4 Construct details about consumer traffic
  • Purpose of this Monitoring Console 1 Derive business intelligence about various services 2 Identify poorly performing/misbehaving services 3 Find out which errors are being caused in each service 4 Construct details about consumer traffic Integrate the open source monitoring console into the internal SOA framework!
  • Comparison with the Internal Monitoring Console (SMC) Issues in SMC 1 Outdated V4 technology for constructing the GUI
  • Comparison with the Internal Monitoring Console (SMC) Issues in SMC 1 Outdated V4 technology for constructing the GUI 2 Very slow!
  • Comparison with the Internal Monitoring Console (SMC) Issues in SMC 1 Outdated V4 technology for constructing the GUI 2 Very slow! 3 Code is highly monolithic with several metric parameters hard-wired into the code
  • Comparison with the Internal Monitoring Console (SMC) Issues in SMC 1 Outdated V4 technology for constructing the GUI 2 Very slow! 3 Code is highly monolithic with several metric parameters hard-wired into the code 4 Difficult to develop further, as well as difficult to move it to a more efficient mechanism
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-manner
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-manner 2 Fast response time of the UI layer
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-manner 2 Fast response time of the UI layer 3 UI design using a scalable framework
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-manner 2 Fast response time of the UI layer 3 UI design using a scalable framework 4 Ability to handle large number of services
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-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
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-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
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-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 Custom/Flexible persistence mechanism
  • Significant Design Features of TMC 1 Monitoring metrics of services in a modular and loosely coupled-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 Custom/Flexible persistence mechanism 8 OPEN SOURCE!
  • Metrics Collected in TMC 1 Top Volume - Call count; the number of times the service is called 2 Top Errors - Errors which have been raised while invoking the service 3 Top Performance - Average response time of the service 4 Consumer Traffic - Consumers who have accessed this service
  • Architecture of the Monitoring Console 1 Can be abstracted to two frameworks running in parallel - metrics logging framework and 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 application server
  • 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 application server 3 SOA Query Metrics Service (sqms) - Logging logging 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 application server 3 SOA Query Metrics Service (sqms) - Logging logging handler framework 4 SPFServlet is the main servlet which handles the requests to the Turmeric runtime.
  • 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 application server 3 SOA Query Metrics Service (sqms) - Logging logging handler framework 4 SPFServlet is the main servlet which handles the requests to the Turmeric runtime. 5 Initializes the metrics logger for logging metrics published by Turmeric services.
  • 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 application server 3 SOA Query Metrics Service (sqms) - Logging logging handler framework 4 SPFServlet is the main servlet which handles the requests to the Turmeric runtime. 5 Initializes the metrics logger for logging metrics published by Turmeric services. 6 Monitoring Console (console) - Metrics handler framework
  • SOA Query Metrics Service (SQMS) Figure 2: Logging and Logging Handler Framework
  • Turmeric Monitoring Console Figure 3: Turmeric Monitoring Console Architecture
  • Demo 1 Demonstration of TMC 2 Sample REST URLs for metrics 3 Simple Consumer for TMC 4 A simple service call to a Turmeric Service through a Java GUI 5 Walkthrough of database schema and significant implementation classes
  • Look at the future - Services Portal SOA framework at a good maturity level; it is now necessary to have a single portal for monitoring several aspects of the framework. 1 Ad-hoc querying: Using the data aggregator script 2 Detailed View: Pre-built reports from ad-hoc queries on the metrics, such as Dependent services across multiple levels Dependent SQL queries The respective pools on which the consumer/service reside Performance trends of the individual services/URLs hosted on the given pool in terms of their throughput/hits and response-time over a period of time System metrics trends (e.g., CPU, memory, garbage collection, errors, and etc.)
  • SMC Screenshots - (1/2) Figure 4: Internal Monitoring Console
  • SMC Screenshots - (2/2) Figure 5: Internal Monitoring Console
  • Data Aggregator tool Figure 6: Ad hoc querying
  • Data Aggregator tool – Contd. Figure 7: Ad hoc querying
  • Data Aggregator tool – Contd. Figure 8: Data Aggregator Tool
  • Data Aggregator tool – Contd. Figure 9: Data Aggregator Tool
  • Data Aggregator tool – Contd. Figure 10: Data Aggregator Tool
  • Data Aggregator tool – Contd. Figure 11: Data Aggregator Tool
  • Data Aggregator tool – Contd. Figure 12: Data Aggregator Tool
  • Data Aggregator tool – Contd. Figure 13: Data Aggregator Tool
  • Data Aggregator tool – Contd. Figure 14: Data Aggregator Tool
  • References [1]Jeffrey Dean, Sanjay Ghemawat, MapReduce: Simplified Data Processing on Large Clusters, In Sixth Symposium on Operating System Design and Implementation(OSDI’04), San Francisco, CA, December, 2004 [2] Eben Hewitt, Cassandra: The Definitive Guide, O’Reilly Publications, November 2010. [3] eBay Open Source Project, Turmeric SOA platform, http: //www.ebayopensource.org/index.php/Turmeric/HomePage
  • References [4] eBay Open Source Project, Documentation of Turmeric SOA platform, https://www.ebayopensource.org/wiki/display/ TURMERICDOC110GA/Turmeric+Documentation+Overview [5] eBay Open Source Project, Turmeric Source Code, http://www.github.com/ebayopensource [6] Internal eBay documentation [7] Google Web Toolkit, http://code.google.com/webtoolkit [8] Apache Cassandra, http://cassandra.apache.org/