Freigeben über


Implementieren des Lastenausgleichs

Letzte Änderung: Donnerstag, 15. April 2010

Gilt für: SharePoint Foundation 2010

Service Application Framework-Anwendungen werden in der Regel auf mehreren Computern gehostet und von Dienstclientanwendungen aufgerufen, die auf Front-End-Webservern ausgeführt werden. Sie müssen Aufrufe von Dienstanwendungs-Proxymethoden mit einem Tool zum Lastenausgleich vom Front-End-Webserver zu einem geeigneten Anwendungsserver umleiten.

SharePoint 2010 bietet in der SPRoundRobinServiceLoadBalancer-Klasse eine Implementierung eines einfachen Lastenausgleichs. Dienstanwendungsproxys können das integrierte Lastenausgleichsmodul verwenden, um Anfragen an die entsprechende Back-End-Dienstanwendung zu leiten.

Erstellen, Bereitstellen und Aufheben der Bereitstellung des Lastenausgleichs

Das folgende Codebeispiel veranschaulicht das Erstellen, Bereitstellen und Aufheben der Bereitstellung des Lastenausgleichs.

internal SampleWebServiceApplicationProxy(
   string name,
   SampleWebServiceProxy serviceProxy,
   Uri serviceApplicationAddress)
   : base(name, serviceProxy, serviceApplicationAddress)
        {
   // Create a new load balancer.
   m_LoadBalancer = new SPRoundRobinServiceLoadBalancer(serviceApplicationAddress);
   
        }

        public override void Provision()
        {
   // Provision the load balancer.
   m_LoadBalancer.Provision();

   base.Provision();
 
   // Ensure the provisioned load balancer 
   // is persisted back to the database.  
   this.Update();
        }

        public override void Unprovision()
        {
   // Unprovision the load balancer.
   m_LoadBalancer.Unprovision();

   base.Unprovision();

   // Ensure the unprovisioned load balancer 
   // is persisted back to the database.  
   this.Update();
        }
Friend Sub New(ByVal name As String, ByVal serviceProxy As SampleWebServiceProxy, ByVal serviceApplicationAddress As Uri)
    MyBase.New(name, serviceProxy, serviceApplicationAddress)
    ' Create a load balancer.
    m_LoadBalancer = New SPRoundRobinServiceLoadBalancer(serviceApplicationAddress)

End Sub

Public Overrides Sub Provision()
    ' Provision the load balancer.
    m_LoadBalancer.Provision()

    MyBase.Provision()

    ' Ensure the provisioned load balancer 
    ' is persisted back to the database.  
    Me.Update()
End Sub

Public Overrides Sub Unprovision()
    ' Unprovision the load balancer.
    m_LoadBalancer.Unprovision()

    MyBase.Unprovision()

    ' Ensure the unprovisioned load balancer 
    ' is persisted back to the database.  
    Me.Update()
End Sub

Siehe auch

Referenz

SPRoundRobinServiceLoadBalancer