Call Girls in Dwarka Mor Delhi Contact Us 9654467111
Final review presentation
1. Design and Implementation of a Service
Monitoring 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
2. 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)
3. Turmeric SOA Framework
1 Client Runtime - Client application code written by the
consumers of the service. Service Invocation
Framework(SIF)
4. 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)
5. 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.
7. Where does services monitoring fit in?
1 Develop a service or a consumer to a service using the Eclipse
SOA plugin
8. 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
9. 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
10. 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
11. Purpose of this Monitoring Console
1 Derive business intelligence about various services
12. Purpose of this Monitoring Console
1 Derive business intelligence about various services
2 Identify poorly performing/misbehaving services
13. 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
14. 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
15. 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!
16. Comparison with the Internal Monitoring Console (SMC)
Issues in SMC
1 Outdated V4 technology for constructing the GUI
17. Comparison with the Internal Monitoring Console (SMC)
Issues in SMC
1 Outdated V4 technology for constructing the GUI
2 Very slow!
18. 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
19. 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
20. Significant Design Features of TMC
1 Monitoring metrics of services in a modular and loosely
coupled-manner
21. 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
22. 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
23. 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
24. 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
25. 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
26. 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
27. 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!
28. 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
29. Architecture of the Monitoring Console
1 Can be abstracted to two frameworks running in parallel -
metrics logging framework and metrics handler framework
30. 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
31. 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
32. 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.
33. 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.
34. 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
35. SOA Query Metrics Service (SQMS)
Figure 2: Logging and Logging Handler Framework
37. 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
38. 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.)
50. 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
51. 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/