Microsoft KB Archive/829023

= INFO: Guide for &quot;Operating .NET-based Applications&quot; =

Article ID: 829023

Article Last Modified on 7/14/2005

-

APPLIES TO


 * Microsoft .NET Framework 1.1
 * Microsoft .NET Framework 1.0

-



SUMMARY
This article describes the guide that is titled Operating .NET-based Applications. This guide contains information about how to monitor and operate applications that are based on the Microsoft .NET Framework. It describes the operations that you can use to design and create applications that use the .NET Framework. This guide covers the following areas:
 * Monitoring
 * Security
 * Sizing and Capacity Planning



MORE INFORMATION
The Operating .NET-based Applications guide contains the following three modules:
 * Monitoring .NET-Based Applications
 * Securing .NET-Based Applications
 * Sizing and Capacity Planning for .NET-Based Applications

These modules contain the following chapters:
 * Chapter 1 – Introduction

This chapter defines the sample application and the business scenario. This chapter also discusses prerequisites and document conventions. It also provides an overview of the Microsoft Operations Framework and the .NET Framework.
 * Monitoring .NET-Based Applications

This module discusses how to monitor the function of your applications. It includes information about how to define healthy and unhealthy applications. This module also discusses how to take appropriate action based on the information that you gather. It also provides information about how to implement effective monitoring and notification of issues that affect .NET-based applications. This module contains the following chapters:
 * Chapter 2 – Monitoring Concepts

This chapter discusses the concept of application health and distinguishes between healthy and unhealthy applications. It discusses issues such as monitoring load and the importance of balancing information detail against monitoring overhead. This chapter introduces monitoring terminology and concepts that you will review in later chapters.
 * Chapter 3 – Selecting Data Sources

To provide effective application monitoring, you must collect data about the health of your application. This data gives you feedback about how well your application is functioning. This chapter discusses various sources of data that you can collect about the health of your application. It introduces the concepts of coarse-grained and fine-grained monitoring. You can choose the level of monitoring that you want based on how much information you want to gather and how much hardware or human resources you want to use.
 * Chapter 4 – Instrumenting .NET-Based Applications

This chapter discusses how to implement the application instrumentation to gather the specific information that you cannot measure by using monitors that the system provides. This chapter provides code samples that you can adapt to provide monitoring information for your own applications.
 * Chapter 5 – Configuring Management Applications

This chapter discusses issues that you should consider if you want to integrate Microsoft Operations Manager (MOM), Microsoft Application Center 2000 Server, and Xtremesoft Inc. Appmetrics in your application environment. Specifically, it provides information about how you can use MOM to collect the information that you selected in chapters 3 and 4, and then collate this information centrally by using MOM management packs.
 * Chapter 6 – Notifying and Reporting

This chapter discusses how to translate generated events into either immediate notifications or longer-term reports. The discussion topics include the types of information that you should collect, how to define your audience, and how to decide how you want to use the gathered data. This chapter also discusses methods that you can use to deliver notifications either immediately or on a schedule.
 * Securing .NET-Based Applications

This module discusses security considerations for your application. It discusses environment security and how security settings affect your .NET Framework-based applications. This module discusses how to use Group Policy to lock down computers. It also discusses ways that you can help secure the network traffic that your application generates. This module contains the following chapters:
 * Chapter 7 – General Security Recommendations

This chapter discusses ways that you can help secure the environment for your application. One of the most important steps is to make sure that your computers run the latest patches and service packs. This chapter describes how to help make sure that your IT environment continues to be updated.
 * Chapter 8 – Managing Security with Windows 2000 Group Policy

Microsoft Windows 2000 defines many security settings through Group Policy. Group Policy controls the behavior of objects on the local computer and in the Active Directory directory service. You must set these policies appropriately. You must also monitor these policies to make sure that no changes occur without prior authorization. This chapter discusses how to manage environment security by using Group Policy.
 * Chapter 9 – Securing Servers Based on Role

Different server roles that appear in your Active Directory environment require different security settings. This chapter discusses the domain controller and the member server roles. It then provides steps that you can take to help secure each of these roles.
 * Chapter 10 – Securing Servers Running .NET-Based Applications

After you have defined overall security settings for your environment, you must define the security settings for the specific servers that are running Framework applications. This chapter defines the settings that permit your Framework applications to run in your environment.
 * Chapter 11 – Network Considerations for Servers Running .NET-Based Applications

Applications that are built on the .NET Framework can span multiple computers. To help secure these applications, you must examine the communication between the clients and the server, and between servers, and then help secure the traffic flow. This chapter discusses how to increase the security of the network traffic flow that a .NET-connected application may generate.
 * Chapter 12 – Customizing the Security Environment for Specific Applications

The general recommendations that appear in the previous chapters provide guidelines for you to help secure any Framework application. However, you may have to make changes to the environment to allow your application to function correctly. This chapter uses the sample FMStocks application to discuss how to configure settings to allow specific applications to function correctly.
 * Sizing and Capacity Planning for .NET-Based Applications

This module provides tools that you can use to model demands that an application makes either before you deploy it (sizing) or when it is in production (capacity planning). By using sizing, you can make accurate forecasts about server scaling during concurrent code development. By using capacity planning, you can anticipate different load profiles. You may also be able to plan for greater user numbers by using current data without incurring excessive costs. This module discusses performance analysis and helps you to understand how components of the .NET Framework affect application performance. This module contains the following chapters:
 * Chapter 13 – Sizing and Capacity Planning for .NET-Based Applications

This chapter provides an introduction to the concepts that are behind sizing and capacity planning. It then discusses how this process is different for Framework applications. This chapter also defines and investigates the concepts that are behind queuing theory, and includes application overload and corresponding service level agreement violations. It also discusses some issues that occur when you increase the load on a Framework application, and how to identify when an application reaches maximum capacity.
 * Chapter 14 – Sizing a .NET-Based Application

Sizing is the process of determining application capacity during application development, and then linking that capacity to planned hardware levels. This chapter discusses how to use the sizing benchmarking methodology to define the characteristics of your expected workload. After you test with this representative workload, you analyze the resulting data to extract useful indicators of application behavior. You can then specify hardware resources that are consistent with the level of service that you want your application to provide. You can also identify whether you should scale up or scale out your environment.
 * Chapter 15 – Capacity Planning

You can obtain production environment data from your application through capacity planning. You can use this production data in either predictive analysis or Microsoft Total Cost Analysis (TCA) to forecast application behavior. For predictive analysis, you can use tools such as Microsoft Operations Manager, Data Transformation Services, and Microsoft Excel to analyze application data and then generate predictions by extrapolating current usage levels into the future. You can use TCA to calculate the cost of each operation, and then aggregate the costs for different user profiles and usage scenarios. By using this type of analysis, you can build an accurate and comprehensive study of application behavior that you can use for loading scenarios or as the basis of service costing.
 * Chapter 16 – Performance Analysis

This chapter discusses performance issues in .NET Framework components and how to address these issues. This chapter also discusses other topics, such as Microsoft ASP.NET, the common language runtime, and just-in-time compilation. Although this chapter does not discuss performance tuning, it provides useful information about how to identify and resolve bottlenecks in Framework applications to maximize application capacity. This chapter provides useful best practice recommendations for distributed applications that use .NET Remoting. It also discusses how to help make sure that your application returns acceptable performance.

