210 likes | 277 Views
.NET And Java Based System Performance Monitor for the Web. Capstone Group #2 CSCI6838:Research Project And Seminar Fall 2005. Team Members Romeo Chua (Lead) rchua@bitaddress.com Aaron McDowell aaron.mcdowell@gmail.com Syed Umair umaircse@yahoo.com Amber Patel patelamber@yahoo.co.in.
E N D
.NET And Java Based System PerformanceMonitor for the Web Capstone Group #2CSCI6838:Research Project And Seminar Fall 2005
Team Members Romeo Chua (Lead) rchua@bitaddress.com Aaron McDowell aaron.mcdowell@gmail.com Syed Umair umaircse@yahoo.com Amber Patel patelamber@yahoo.co.in Mentor Girish Bajaj Software Engineer Tietronix Software, Inc. Instructor Dr. Kwok Bun Yue Associate Professor of Computer Science - UHCL Team Information Casptone Group #2 - Fall 2005
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
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
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
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
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
Selected for programming Prototype Development Development Environment to use • Prototypes using • C# using .NET • Win32 API Casptone Group #2 - Fall 2005
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
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
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
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
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
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
System Design …(7/7) • TieMon WebApp interface design • Displays the results to user Casptone Group #2 - Fall 2005
System Architecture Client Machine Server Machine – Windows 2003 Server OS MS .Net Framework 1.1 Web Brower The Internet JBoss Web App Server TieMon DLL (C#) TieMon Web Application (Java Struts) Inter Process Communication File Access Firewall File System Ethernet Network Casptone Group #2 - Fall 2005
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
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
Project Schedule Casptone Group #2 - Fall 2005
Bibliography • .NET Framework • System.Diagnostics Namespace • http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemdiagnostics.asp • Jawin OSS • Project Home • http://jawinproject.sourceforge.net/ • In-process interoperability with .NET • http://jawinproject.sourceforge.net/jawin.html#callingNET Casptone Group #2 - Fall 2005
Thank you Questions ??