.NET And Java Based System Performance Monitor for the Web Capstone Group #2 CSCI6838:Research Project And Seminar Fall 2005
Casptone Group #2 - Fall Team Information Team Members Romeo Chua (Lead) Aaron McDowell Syed Umair Amber Patel Mentor Girish Bajaj Software Engineer Tietronix Software, Inc. Instructor Dr. Kwok Bun Yue Associate Professor of Computer Science - UHCL
Casptone Group #2 - Fall Contents Project Overview Project Requirements Technical Requirement Prototype Development System Design System Architecture Team Roles Project Schedule Progress Report Bibliography
Casptone Group #2 - Fall 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 Project Requirements … (1/2) Performance Monitoring Process information Memory information Processor utilization Network utilization SQL Server database metrics Other metrics
Casptone Group #2 - Fall 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 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 Prototype Development Prototypes using C# using.NET Win32 API Results of prototype Memory UsageCPU UsageRuntime Prototype Private Bytes Peak Private Bytes Working Set Peak Working Set Priority Kernel Time User Time Avg Win3210,008K10,280K11,996K12,124K sec 0.18 sec 10ms.NET using C# 13,024K13,172K15,004K15,072K8.40 sec 0.35 sec 10ms Development Environment to use Selected for programming
Casptone Group #2 - Fall 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 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 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 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 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 System Design … (6/7) TieMon WebApp interface design Allows users to configure the duration and frequency of the monitoring process.
Casptone Group #2 - Fall System Design … (7/7) TieMon WebApp interface design Displays the results to user
Casptone Group #2 - Fall System Architecture Server Machine – Windows 2003 Server OS Client Machine Firewall Web Brower TieMon DLL (C#) JBoss Web App Server The Internet TieMon Web Application (Java Struts) MS.Net Framework 1.1 Inter Process Communication File Access Ethernet Network File System
Casptone Group #2 - Fall 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 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 Project Schedule
Casptone Group #2 - Fall Bibliography .NET Framework System.Diagnostics Namespace sp?url=/library/en- us/cpref/html/frlrfsystemdiagnostics.asp sp?url=/library/en- us/cpref/html/frlrfsystemdiagnostics.asp Jawin OSS Project Home In-process interoperability with.NET tml#callingNET tml#callingNET
Thank you Questions ??