StatelessServiceDescription
Beschreibt einen zustandslosen Dienst.
Eigenschaften
ApplicationName
Typ: Zeichenfolge
Erforderlich: Nein
Der Name der Anwendung, einschließlich des URI-Schemas „fabric:“.
ServiceName
Typ: Zeichenfolge
Erforderlich: Ja
Der vollständige Name des Diensts mit dem URI-Schema "fabric:".
ServiceTypeName
Typ: Zeichenfolge
Erforderlich: Ja
Name des Diensttyps, wie im Dienstmanifest angegeben.
InitializationData
Typ: Array einer ganzen Zahl
Erforderlich: Nein
Die Initialisierungsdaten als Array von Bytes. Initialisierungsdaten werden bei der Erstellung an Dienstinstanzen oder Replikate übergeben.
PartitionDescription
Typ: PartitionSchemeDescription
Erforderlich: Ja
Die Partitionsbeschreibung als Objekt.
PlacementConstraints
Typ: Zeichenfolge
Erforderlich: Nein
Die Platzierungseinschränkungen als Zeichenfolge. Platzierungseinschränkungen sind boolesche Ausdrücke für Knoteneigenschaften und ermöglichen es, einen Dienst entsprechend den Dienstanforderungen auf bestimmte Knoten einzuschränken. Wenn Sie beispielsweise einen Dienst auf Knoten platzieren möchten, auf denen NodeType blau ist, geben Sie Folgendes an: "NodeColor == blue)".
CorrelationScheme
Typ: Array von ServiceCorrelationDescription
Erforderlich: Nein
Das Korrelationsschema.
ServiceLoadMetrics
Typ: Array von ServiceLoadMetricDescription
Erforderlich: Nein
Die Dienstlademetriken.
ServicePlacementPolicies
Typ: Array von ServicePlacementPolicyDescription
Erforderlich: Nein
Die Dienstplatzierungsrichtlinien.
DefaultMoveCost
Typ: Zeichenfolge (Enumeration)
Erforderlich: Nein
Die Verschiebungskosten für den Dienst.
Gibt die Verschiebungskosten für den Dienst an.
Mögliche Werte:
-
Zero
– Keine Verschiebungskosten. Dieser Wert ist null. -
Low
– Gibt die Verschiebungskosten des Diensts als Niedrig an. Der Wert ist "1". -
Medium
– Gibt die Verschiebungskosten des Diensts als Mittel an. Der Wert ist "2". -
High
– Gibt die Verschiebungskosten des Diensts als Hoch an. Der Wert ist "3". -
VeryHigh
– Gibt die Verschiebungskosten des Diensts als VeryHigh an. Der Wert ist "4".
IsDefaultMoveCostSpecified
Typ: boolean
Erforderlich: Nein
Gibt an, ob die DefaultMoveCost-Eigenschaft angegeben ist.
ServicePackageActivationMode
Typ: Zeichenfolge (Enumeration)
Erforderlich: Nein
Der Aktivierungsmodus des Dienstpakets, das für einen Dienst verwendet werden soll.
Der Aktivierungsmodus des Dienstpakets, das für einen Service Fabric-Dienst verwendet werden soll. Dies wird zum Zeitpunkt der Erstellung des Diensts angegeben.
Mögliche Werte:
-
SharedProcess
– Dies ist der Standardaktivierungsmodus. Mit diesem Aktivierungsmodus teilen sich Replikate oder Instanzen aus unterschiedlichen Dienstpartitionen auf einem bestimmten Knoten dieselbe Aktivierung des Dienstpakets auf einem Knoten. Der Wert ist gleich null. -
ExclusiveProcess
– Mit diesem Aktivierungsmodus verfügt jedes Replikat oder instance des Diensts auf einem bestimmten Knoten über eine eigene dedizierte Aktivierung des Dienstpakets auf einem Knoten. Der Wert ist "1".
ServiceDnsName
Typ: Zeichenfolge
Erforderlich: Nein
Der DNS-Name des Diensts. Der DNS-Systemdienst muss im Service Fabric-Cluster aktiviert sein.
ScalingPolicies
Typ: Array von ScalingPolicyDescription
Erforderlich: Nein
Skalierungsrichtlinien für diesen Dienst.
TagsRequiredToPlace
Typ: NodeTagsDescription
Erforderlich: Nein
Tags für die Platzierung dieses Diensts.
TagsRequiredToRun
Typ: NodeTagsDescription
Erforderlich: Nein
Tags für die Ausführung dieses Diensts.
InstanceCount
Typ: integer
Erforderlich: Ja
InklusiveMinimum: -1
Die Anzahl von Instanzen.
MinInstanceCount
Typ: integer
Erforderlich: Nein
MinInstanceCount ist die Mindestanzahl von Instanzen, die zur Erfüllung der Sicherheitsüberprüfung "EnsureAvailability" bei Vorgängen wie upgraden oder Deaktivieren des Knotens erforderlich sein müssen.
Die tatsächliche Zahl, die verwendet wird, ist max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).
Hinweis: Wenn InstanceCount auf -1 festgelegt ist, wird während der MinInstanceCount-Berechnung -1 zuerst in die Anzahl der Knoten konvertiert, auf denen die Instanzen gemäß den Platzierungseinschränkungen für den Dienst platziert werden dürfen.
MinInstancePercentage
Typ: integer
Erforderlich: Nein
MinInstancePercentage ist der mindestprozentige Prozentsatz von InstanceCount, der für die Sicherheitsüberprüfung "EnsureAvailability" während Vorgängen wie upgraden oder deaktivieren des Knotens erfüllt sein muss.
Die tatsächliche Zahl, die verwendet wird, ist max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).
Hinweis: Wenn InstanceCount auf -1 festgelegt ist, wird während der MinInstancePercentage-Berechnung -1 zuerst in die Anzahl der Knoten konvertiert, auf denen die Instanzen gemäß den Platzierungseinschränkungen für den Dienst platziert werden dürfen.
Flags
Typ: integer
Erforderlich: Nein
Flags, die angeben, ob andere Eigenschaften festgelegt sind. Jede der zugeordneten Eigenschaften entspricht einem unten angegebenen Flag, das, sofern festgelegt, angibt, dass die -Eigenschaft angegeben ist.
Diese Eigenschaft kann eine Kombination dieser Flags sein, die mit dem bitweisen OR-Operator abgerufen werden.
Wenn beispielsweise der angegebene Wert 1 ist, werden die Flags für InstanceCloseDelayDuration festgelegt.
- Keine: Gibt nicht an, dass andere Eigenschaften festgelegt sind. Der Wert ist gleich null.
- InstanceCloseDelayDuration: Gibt an, dass die InstanceCloseDelayDuration-Eigenschaft festgelegt ist. Der Wert ist "1".
- InstanceRestartWaitDuration: Gibt an, dass die InstanceRestartWaitDurationSeconds-Eigenschaft festgelegt ist. Der Wert ist "2".
InstanceCloseDelayDurationSeconds
Typ: integer (int64)
Erforderlich: Nein
InclusiveMaximum: 4294967295
InklusiveMinimum: 0
Dauer in Sekunden, um zu warten, bevor ein zustandsloser instance geschlossen wird, damit die aktiven Anforderungen ordnungsgemäß entladen werden können. Dies wäre wirksam, wenn die instance während des Anwendungs-/Clusterupgrades und deaktivieren des Knotens geschlossen wird.
Der für diese instance verfügbar gemachte Endpunkt wird entfernt, bevor die Verzögerung gestartet wird, wodurch neue Verbindungen mit diesem instance verhindert werden.
Darüber hinaus können Clients, die Änderungsereignisse für Den Dienstendpunkt abonniert haben,nachhttps://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync Erhalt der Benachrichtigung zum Entfernen des Endpunkts die folgenden Aktionen ausführen: – Beenden Sie das Senden neuer Anforderungen an diese instance.
– Schließen Sie vorhandene Verbindungen, nachdem In-Flight-Anforderungen abgeschlossen wurden.
– Stellen Sie für zukünftige Anforderungen eine Verbindung mit einer anderen instance der Dienstpartition her.
Beachten Sie, dass der Standardwert von InstanceCloseDelayDuration 0 ist, was angibt, dass es vor dem Schließen des instance keine Verzögerung oder Entfernung des Endpunkts gibt.
InstanceLifecycleDescription
Typ: InstanceLifecycleDescription
Erforderlich: Nein
Definiert, wie sich Instanzen dieses Diensts während ihres Lebenszyklus verhalten.
InstanceRestartWaitDurationSeconds
Typ: integer (int64)
Erforderlich: Nein
InclusiveMaximum: 4294967295
InklusiveMinimum: 0
Wenn ein zustandsloser instance ausfällt, wird dieser Timer gestartet. Nach Ablauf erstellt Service Fabric eine neue instance auf jedem Knoten im Cluster.
Diese Konfiguration soll die unnötige Erstellung eines neuen instance in Situationen reduzieren, in denen die instance wahrscheinlich in kurzer Zeit wiederhergestellt wird. Beispielsweise während eines Upgrades.
Der Standardwert ist 0, was angibt, dass Service Fabric sofort mit der Erstellung des Ersatzes beginnt, wenn zustandslose instance ausfällt.