Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
.NET And Java Based System Performance Monitor for the Web Capstone Group #2 CSCI6838:Research Project And Seminar Fall 2005 Team Information Team Members Mentor Romeo Chua (Lead) [email protected] Aaron McDowell [email protected] Syed Umair [email protected] Amber Patel [email protected] Girish Bajaj Software Engineer Tietronix Software, Inc. Instructor Dr. Kwok Bun Yue Associate Professor of Computer Science UHCL Casptone Group #2 - Fall 2005 2 Contents Project Overview Project Requirements Technical Requirement Prototype Development System Design System Architecture Team Roles Project Schedule Progress Report Bibliography Casptone Group #2 - Fall 2005 3 Project Overview Develop a web-based performance monitoring/gathering tool Current tools for monitoring OS level : Task Manager (taskman) and Performance Monitor (perfmon) built-in Windows utilities Commercial applications for monitoring Require physical presence at application site Casptone Group #2 - Fall 2005 4 Project Requirements …(1/2) Performance Monitoring Process information Memory information Processor utilization Network utilization SQL Server database metrics Other metrics Casptone Group #2 - Fall 2005 5 Project Requirements … (2/2) Performance Analyzer Simple performance analyzer that will display aggregates of required metrics after processing data gathered. Graphical User Interface Setup page to select required performance terms to profile Display page to show all gathered metrics and aggregates Casptone Group #2 - Fall 2005 6 Technical Requirements Technologies .NET Framework 1.1 (C#) Java-Com Bridge (Jawin OSS) Java Web Applications programming (Java Struts and JBoss) Casptone Group #2 - Fall 2005 7 Prototype Development Development Environment to use Selected for programming Prototypes using C# using .NET Win32 API Results of prototype Memory Usage CPU Usage Runtime Prototype Private Bytes Peak Private Bytes Working Set Peak Working Set Priority Kernel Time User Time Avg Win32 10,008K 10,280K 11,996K 12,124K 8 0.53 sec 0.18 sec 10ms .NET using C# 13,024K 13,172K 15,004K 15,072K 8 .40 sec 0.35 sec 10ms Casptone Group #2 - Fall 2005 8 System Design …(1/7) TieMon DLL Overview .NET Framework (C#) Uses System.Diagnostics namespace to get performance data Multi-threaded DLL implementation Uses XML for information exchange with Java Casptone Group #2 - Fall 2005 9 System Design …(2/7) TieMon DLL Overview … Jawin – Java/Win32 or .NET Interoperability Simplifies Java calls to Windows DLLs Uses Windows Dynamic Link Library to create Java source code Casptone Group #2 - Fall 2005 10 System Design …(3/7) TieMon DLL Design Uses a Singleton design pattern Will provide a list of available performance counters in the system for the WebApp, to the user WebApp will provide XML data of counters to monitor from a file provided by the user, as well as time to run and measurement intervals Parses XML data and checks for errors. Supports aliases for usability. Provides a ‘Cancel’ method to stop monitoring Writes raw performance monitor data into the local file system Casptone Group #2 - Fall 2005 11 System Design …(4/7) TieMon Web Application Overview Java Struts and JBoss Web Application Server Uses the TieMon DLL to access system performance counters No Multi-user support Casptone Group #2 - Fall 2005 12 System Design …(5/7) TieMon WebApp interface design Allows users to download available performance counters Allows users to upload selected performance counters Both files in XML format Casptone Group #2 - Fall 2005 13 System Design …(6/7) TieMon WebApp interface design Allows users to configure the duration and frequency of the monitoring process. Casptone Group #2 - Fall 2005 14 System Design …(7/7) TieMon WebApp interface design Displays the results to user Casptone Group #2 - Fall 2005 15 System Architecture Client Machine Server Machine – Windows 2003 Server OS MS .Net Framework 1.1 TieMon DLL (C#) Web Brower The JBoss Web App Server Internet TieMon Web Application (Java Struts) Firewall File System Inter Process Communication Casptone Group #2 - Fall 2005 File Access Ethernet Network 16 Team Roles Romeo Chua Team Leader, Java and .NET Development Aaron McDowell Java Web Applications Programming Requirements Development Amber Patel Java and .NET Development Research Syed Umair Win32, Java and .NET Development Research Casptone Group #2 - Fall 2005 17 Progress Report Research Task Manager info available from .NET Size limit of strings that can be passed from Java to .NET using Jawin Alternative to sleep system call which causes context switching Coding PC for testing/deployment is ready. Most needed S/W installed. Needs JBoss WebApp server. Requirements have been solidified (though still being updated) TieMon DLL and WebApp development has started Casptone Group #2 - Fall 2005 18 Project Schedule Casptone Group #2 - Fall 2005 19 Bibliography .NET Framework System.Diagnostics Namespace http://msdn.microsoft.com/library/default.a sp?url=/library/enus/cpref/html/frlrfsystemdiagnostics.asp Jawin OSS Project Home http://jawinproject.sourceforge.net/ In-process interoperability with .NET http://jawinproject.sourceforge.net/jawin.h tml#callingNET Casptone Group #2 - Fall 2005 20 Thank you Questions ??