Hello World mit dem Routingdienst

Das HelloRoutingService-Beispiel demonstriert den Windows Communication Foundation (WCF)-Routingdienst. Der Routingsdienst ist eine WCF-Komponente, mit der Sie ganz einfach einen inhaltsbasierten Router in Ihre Anwendung integrieren können. Dieses Beispiel adaptiert das Standard WCF Rechnerbeispiel für die Kommunikation mit dem Routingdienst. In diesem Beispiel ist der Rechnerclient so konfiguriert, dass er Nachrichten an einen vom Router verfügbar gemachten Endpunkt sendet. Der Routingdienst ist so konfiguriert, dass er alle gesendeten Nachrichten akzeptiert und diese an einen Endpunkt weiterleitet, der dem Rechnerdienst entspricht. Somit werden vom Client gesendete Nachrichten vom Router empfangen und zum eigentlichen Rechnerdienst umgeleitet. Nachrichten vom Rechnerdienst werden an den Router zurückgesendet, der sie dann zurück an den Rechnerclient übergibt.

So verwenden Sie dieses Beispiel

  1. Öffnen Sie mit Visual Studio HelloRoutingService.sln.

  2. drücken Sie F5 oder Strg+Umschalt+B<.

    Hinweis

    Wenn Sie F5 drücken, wird der Rechnerclient automatisch gestartet. Wenn Sie Strg+Umschalt+B (Build) drücken, müssen Sie folgende Anwendungen selbst starten.

    1. Rechnerclient (./CalculatorClient/bin/client.exe)
    2. Rechnerdienst (./CalculatorService/bin/service.exe)
    3. Routingdienst (./RoutingService/bin/RoutingService.exe)
  3. Drücken Sie die EINGABETASTE, um den Client zu starten.

    Die folgende Ausgabe wird angezeigt.

     Add(100,15.99) = 115.99
    
     Subtract(145,76.54) = 68.46
    
     Multiply(9,81.25) = 731.25
    
     Divide(22,7) = 3.14285714285714
    

Konfigurierbar über Code oder App.Config

Das Beispiel ist so konfiguriert, dass eine App.config-Datei zur Definition des Verhaltens des Routers verwendet wird. Sie können außerdem den Namen der Datei App.config ändern, damit er nicht erkannt wird, und die Auskommentierung des Methodenaufrufs von ConfigureRouterViaCode() aufheben. Beide Methoden führen zum gleichen Routerverhalten.

Szenario

In diesem Beispiel wird der Router in der Funktion als einfaches Nachrichtensystem veranschaulicht. Der Routingdienst funktioniert als transparenter Proxyknoten, der so konfiguriert wurde, dass er Nachrichten direkt an einen vorkonfigurierten Satz von Zielendpunkten übergibt.

Reales Szenario

Contoso möchte mehr Flexibilität bei der Benennung, Adressierung, Konfiguration und Sicherheit der Dienste. Aus diesem Grund wird ein einfaches Nachrichtensystem vor die Dienste gesetzt, das als öffentlicher Endpunkt fungiert. So können zusätzliche Sicherheitsmaßnahmen vor den eigentlichen Diensten eingefügt werden, und skalierte Lösungen sowie die Dienstversionsverwaltung können später einfacher implementiert werden.

Siehe auch