Application
Component Load Balancing applications
The following instructions enable CLB to be applied quickly. These instructions assume that stager will be used to deploy the content to the Web tier and the COM + cluster. and assume you have knowledge of the actual use of Visual Basic, ASP, and HTML.
- Use Visual Basic on stager to create a COM + component that exports the following functions.
Public Function GetName () as String
Set WS = CreateObject ("Wscript.Network")
GetName = Ws.computername
Set ws=nothing
End Function
- Package components into a COM + application using COM + Services Explorer.
- On Stager, create a application Center application that includes COM + components.
- Deploy a COM + component to a COM + cluster. Remember to select Deploy COM + applicationsin the Deployment Wizard, otherwise the components will not be deployed.
- Use the following script to create an ASP file named Default.asp.
<script language=vbscript runat= "Server" >
For N=1 to 50
Set X=createobject ("Yourcomponent.yourclass")
Response.Write "Component created on:"
Response.Write X.getname
Response.Write "<br>"
Set x=nothing
Next
</script>
- REPLACES ProgID "Yourcomponent.yourclass"with the ProgID of the component created in step 1th.
- Create a application Center application on Stager (including the Default.asp file in step 5th and the COM + component in step 1th).
- Deploy the application to a WEB-tier cluster.
- Ensure that the Web-tier routing list is established and the COM + component is marked to support load balancing.
- Run Default.asp from the client. If you do not work at first, you may be the result of the restart of the IIS Service during component deployment. Please wait a moment and try again.
If you retry successfully, you will see a list of COM + cluster members used to create the component instance.
when to use CLB
CLB is an excellent technology for building distributed solutions. But sometimes, CLB may not be the best solution. The key issues are performance, scalability, and security. Understanding these issues will help build a better cluster topology.
Performance
No matter how attractive and powerful a Web site is, the site will not succeed if the user does not have satisfactory performance from the site. There are two issues that are important:
- Throughput-web The work done by the site.
- Response time-the time required to provide feedback to the user.
The two are interrelated, and CLB have some problems with them.
Throughput
Throughput performance decreases when any type of call is made over the network. Using CLB can obviously cause this, so you need to consider this when deciding on a cluster architecture. To further illustrate this issue, the following data shows the number of calls per second to a single threaded Visual Basic 6 COM component that returns "Hello, World" as a string property. The client is already bound in advance and does not publish a reference between calls to retrieve the property. Scheme
Number of calls per second
Relative speed
COM + Server application, running on a 10BaseT network
625
1.0x
COM + Server application,out Proc, the same computer
1923
3.08x
COM + Library application,in Proc, same computer
3333
5.33x
Obviously, calls made over the network produce less throughput than the software that invokes the same computer. In all software communications, the same happens regardless of whether Microsoft software is passed or not. Therefore, where throughput is critical, CLB does not offer a good solution. In this case, it is a good idea to install the COM + component locally on the Web-tier cluster member so that you can avoid calls between networks. Although CLB support is lost, load balancing can still be provided through NLB.
file:///F:/My%20Work/Technical Documentation/server group setup/MICROSOFT%20APPLICATION%20CENTER%202000%20 Component Load Balancing Technology Overview. files/clbovr05.gif
Figure 5 COM + components on the WEB layer
Response Time
It is obviously important to ensure that users are quick to respond to web sites, and that the architecture of the Web site has a significant impact on response times. COM + components running on the Web-tier cluster may perform actions that significantly degrade the responsiveness of the Web site. If the importance of response time is greater than the importance of component throughput for the work of non-COM + components, one solution is to move the COM + component to a COM + cluster layer. This reduces the workload of the Web-tier cluster to improve the service time for clients that do not use COM + components. For example, a client that accesses a static Web page. Obviously, there is no improvement in response time when a COM + component is required to work. In fact, performance is likely to fall due to calls that will take place across the network. Another approach is to move the routing list to a stand-alone COM + routing cluster. Doing so even reduces the workload of the WEB layer, as there will be no CLB-specific work on it. Additionally, this facilitates the work of non-COM + components on the WEB layer, but because of the network invocation, the performance of the COM + component is further degraded.
Obviously, high performance and CLB are not necessarily concurrent, and Web site designers must be aware of these limitations.
Ease of management
Using a stand-alone COM + cluster can help improve manageability. This allows the COM + components and IP requests of the Web site to be managed easily and independently. For example, many organizations place their COM + components on servers located in different physical locations. Using a stand-alone COM + cluster enables independent management of the cluster. In addition, you can have multiple Web-tier clusters share a COM + cluster, and vice versa.
Security
A common use of CLB is to enhance the security of your Web site. When used as a means of accessing data, COM + components can use their own role-based (or programmatically implemented) security mechanisms to protect data. This security mechanism is likely to be compromised if the component resides in a Web-tier cluster. The Web-tier cluster may receive calls from an untrusted client that is attempting to illegally exploit COM + components that are installed on a cluster member. CLB can avoid this problem by transferring COM + components from a Web-tier cluster to a COM + cluster. A COM + cluster is typically protected by a firewall (firewall B in Figure 6), which allows only calls from within the Web-tier cluster to create components, not calls from the client to create components. Figure 6 also shows a demilitarized zone (DMZ), which protects the WEB layer through two firewalls.
file:///F:/My%20Work/Technical Documentation/server group setup/MICROSOFT%20APPLICATION%20CENTER%202000%20 Component Load Balancing Technology Overview. files/clbovr06.gif
Figure 6 COM + cluster behind the firewall
Summary
CLB is a wonderful technique for building distributed solutions, but it must be used with caution. Throughput performance can be negatively impacted while using it, but other benefits, such as security, scalability, ease of setup, load balancing, and so on, determine that it is still an important tool. A reasonable use of CLB will help to develop a good solution based on. NET.
Resources
Http://www.Microsoft.com/ApplicationCenter-The latest information about application Center.
Microsoft application Center Resource Kit-Contains an in-depth discussion of application Center. Further information about CLB, especially deployment scenarios, is given. It will be ready for use soon.
http://www.microsoft.com/com-Information about COM and COM +.
http://www.microsoft.com/net-Authoritative information about. NET.
http://www.microsoft.com/windows2000/library/howitworks/cluster/nlb.asp-Detailed information about Network Load Balancing.
This white paper is a first draft and may make major changes before the final commercial version. This document is for informational purposes only, and Microsoft does not make any express or implied warranty in this document. The information in this document may be subject to change without notice. The risks and consequences of using this document are the responsibility of the user. The companies, organizations, products, people, and events mentioned in this article as examples are fictitious. Never means any actual company, institution, product, person, or event. It is the user's responsibility to comply with all applicable copyright laws. Without limiting the rights under copyright, no part of this article may be reproduced, stored in or introduced into a retrieval system, or in any form or by any means (electronic, mechanical, photocopying, recording, etc.), or for any purpose, unless expressly permitted in writing by Microsoft Corporation. Forward any part of this article.