Wie durchsucht man die Anwendung auf der Service Fabric?

8

Wie finde ich heraus, welchen Endpunkt ich anfordern sollte, um GetAccounts auszulösen?

Ich habe zwei Anwendungen auf meinem lokalen Cluster:

Der Struktur / Service ist eine Web-API-Anwendung mit der folgenden Konfiguration:

%Vor%

Der Start ist wie folgt konfiguriert:

%Vor%

Und schließlich das Service-Manifest:

%Vor%

Und mein Controller:

%Vor%

Wie finde ich heraus, welchen Endpunkt ich anfordern sollte, um GetAccounts auszulösen?

    
l--''''''---------'''''''''''' 26.05.2017, 16:14
quelle

3 Antworten

5

Auf einem nicht lokalen Cluster können Sie einen Reverseproxy . Mit einem Reverse-Proxy können Sie dynamische Ports verwenden (wie in Ihrer .gif-Datei gezeigt). Bei Verwendung eines Reverse-Proxy können Sie Ihren Dienst mit der Port-Nummer Ihres Reverse-Proxy aufrufen. In Ihrem Beispiel würde der Dienst aufgerufen werden mit:          http://clusterAddress:19081/Service/Web/api/controller/accounts/GetAccounts

    
Wouter B 30.05.2017 07:03
quelle
4

In Service Fabric wird ein Service irgendwo in einem Service Fabric-Cluster ausgeführt, der normalerweise auf mehrere VMs verteilt ist. Sie kann entweder vom Service-Eigentümer oder automatisch von Service Fabric von einem Ort zum anderen verschoben werden. Dienste sind nicht statisch an eine bestimmte Maschine oder Adresse gebunden.

Eine Service Fabric-Anwendung besteht im Allgemeinen aus vielen verschiedenen Diensten, wobei jeder Dienst eine spezielle Aufgabe ausführt. Diese Dienste können miteinander kommunizieren, um eine vollständige Funktion zu bilden, beispielsweise das Rendern verschiedener Teile einer Webanwendung. Es gibt auch Client-Anwendungen, die mit Diensten verbunden sind und mit diesen kommunizieren.

Um beispielsweise externen Verkehr auf Port 80 zu akzeptieren, müssen folgende Dinge konfiguriert werden: Schreiben Sie einen Dienst, der Port 80 überwacht. Konfigurieren Sie Port 80 in der ServiceManifest.xml des Dienstes und öffnen Sie einen Listener im Dienst, z. B. einen selbst gehosteten Webserver.

XML

%Vor%

C #

%Vor%

In diesem Dokument wird erläutert, wie Sie die Kommunikation mit und zwischen Diensten in Service Fabric einrichten:

Verbinden und kommunizieren Sie mit Diensten im Service Stoff

    
Dmitry Kazakov 02.06.2017 11:27
quelle
2

Ich nehme an, dass dieser Web Api der Außenwelt ausgesetzt ist? Der statusfreie Dienst, mit dem Sie ihn hosten, hat den dynamischen Port aktiviert. Für Außenverkleidungsdienste ist es am besten, ihm einen festen Hafen zu geben.

In der Dienstmanifestdatei können Sie die Portnummer in der Endpunktdefinition hinzufügen:

%Vor%

Siehe diesen Link für mehr Infos.

Sobald Sie die Portnummer haben, können Sie die Web-API unter Ссылка

aufrufen

Sie können dann die tatsächliche Portnummer im Explorer nachschlagen, unabhängig davon, ob Sie dynamische Ports verwenden oder nicht.

Um die Endpoint-Port-Nummer anzuzeigen, gehen Sie wie folgt zu einem Knoten unter Ihrem Dienst:

(Siehe den Endpunkt auf der rechten Seite?)

Beachten Sie, dass wenn der Endpunkt die IP eines bestimmten Knotens enthält, Sie die IP oder FQDN des Clusters benötigen. Aber jetzt scheint es in Ordnung zu sein, da Sie localhost verwenden.

    
Peter Bons 26.05.2017 17:12
quelle