StatelessServiceDescription
Describe un servicio sin estado.
Propiedades
Nombre | Tipo | Obligatorio |
---|---|---|
ApplicationName |
string | No |
ServiceName |
string | Sí |
ServiceTypeName |
string | Sí |
InitializationData |
matriz de enteros | No |
PartitionDescription |
PartitionSchemeDescription | Sí |
PlacementConstraints |
string | No |
CorrelationScheme |
matriz de ServiceCorrelationDescription | No |
ServiceLoadMetrics |
matriz de ServiceLoadMetricDescription | No |
ServicePlacementPolicies |
matriz de ServicePlacementPolicyDescription | No |
DefaultMoveCost |
string (enum) | No |
IsDefaultMoveCostSpecified |
boolean | No |
ServicePackageActivationMode |
string (enum) | No |
ServiceDnsName |
string | No |
ScalingPolicies |
matriz de ScalingPolicyDescription | No |
TagsRequiredToPlace |
NodeTagsDescription | No |
TagsRequiredToRun |
NodeTagsDescription | No |
InstanceCount |
integer | Sí |
MinInstanceCount |
integer | No |
MinInstancePercentage |
integer | No |
Flags |
integer | No |
InstanceCloseDelayDurationSeconds |
entero (int64) | No |
InstanceLifecycleDescription |
InstanceLifecycleDescription | No |
InstanceRestartWaitDurationSeconds |
entero (int64) | No |
ApplicationName
Tipo: cadena
Obligatoria: no
El nombre de la aplicación, incluido el esquema URI 'fabric:'.
ServiceName
Tipo: cadena
Obligatoria: sí
Nombre completo del servicio con el esquema de URI "fabric:".
ServiceTypeName
Tipo: cadena
Obligatoria: sí
Nombre del tipo de servicio tal y como se especifica en el manifiesto de servicio.
InitializationData
Tipo: matriz de enteros
Obligatoria: no
Los datos de inicialización como una matriz de bytes. Los datos de inicialización se pasan a las instancias o réplicas del servicio cuando se crean.
PartitionDescription
Tipo: PartitionSchemeDescription
Obligatoria: sí
Descripción de la partición como un objeto.
PlacementConstraints
Tipo: cadena
Obligatoria: no
Las restricciones de colocación como una cadena. Las restricciones de colocación son expresiones booleanas en las propiedades del nodo y permiten restringir un servicio en nodos concretos según los requisitos de servicio. Por ejemplo, para colocar un servicio en los nodos donde NodeType es azul, especifique lo siguiente: "NodeColor == azul)".
CorrelationScheme
Tipo: matriz de ServiceCorrelationDescription
Obligatoria: no
Esquema de correlación.
ServiceLoadMetrics
Tipo: matriz de ServiceLoadMetricDescription
Obligatoria: no
Métricas de carga del servicio.
ServicePlacementPolicies
Tipo: matriz de ServicePlacementPolicyDescription
Obligatoria: no
Las directivas de selección de ubicación del servicio.
DefaultMoveCost
Tipo: cadena (enumeración)
Obligatoria: no
Costo de traslado del servicio.
Especifica el costo de movimiento de un servicio.
Los valores posibles son:
-
Zero
- Costo de movimiento cero. Este valor es cero. -
Low
: especifica el costo de traslado del servicio como Bajo. El valor es 1. -
Medium
: especifica el costo de traslado del servicio como Medio. El valor es 2. -
High
: especifica el costo de traslado del servicio como Alto. El valor es 3. -
VeryHigh
- Especifica el costo de traslado del servicio como VeryHigh. El valor es 4.
IsDefaultMoveCostSpecified
Tipo: booleano
Obligatoria: no
Indica si se especifica la propiedad DefaultMoveCost.
ServicePackageActivationMode
Tipo: cadena (enumeración)
Obligatoria: no
Modo de activación del paquete de servicio que se va a usar para un servicio.
Modo de activación del paquete de servicio que se va a usar para un servicio de Service Fabric. Esto se especifica en el momento de crear el servicio.
Los valores posibles son:
-
SharedProcess
: este es el modo de activación predeterminado. Con este modo de activación, las réplicas o instancias de diferentes particiones del servicio, en un nodo determinado, compartirán la misma activación del paquete de servicio en un nodo. El valor predeterminado es cero. -
ExclusiveProcess
- Con este modo de activación, cada réplica o instancia de servicio, en un nodo determinado, tendrá su propia activación dedicada del paquete de servicio en un nodo. El valor es 1.
ServiceDnsName
Tipo: cadena
Obligatoria: no
Nombre DNS del servicio. Requiere que el servicio del sistema DNS esté habilitado en el clúster de Service Fabric.
ScalingPolicies
Tipo: matriz de ScalingPolicyDescription
Obligatoria: no
Escalado de directivas para este servicio.
TagsRequiredToPlace
Tipo: NodeTagsDescription
Obligatoria: no
Etiquetas para la colocación de este servicio.
TagsRequiredToRun
Tipo: NodeTagsDescription
Obligatoria: no
Etiquetas para ejecutar este servicio.
InstanceCount
Tipo: entero
Obligatoria: sí
InclusiveMinimum: -1
El recuento de instancias.
MinInstanceCount
Tipo: entero
Obligatoria: no
MinInstanceCount es el número mínimo de instancias que deben cumplir la comprobación de seguridad EnsureAvailability durante las operaciones como actualizar o desactivar el nodo.
El número real que se usa es max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).
Tenga en cuenta que si InstanceCount se establece en -1, durante el cálculo de MinInstanceCount -1 se convierte primero en el número de nodos en los que se permite colocar las instancias según las restricciones de colocación en el servicio.
MinInstancePercentage
Tipo: entero
Obligatoria: no
MinInstancePercentage es el porcentaje mínimo de InstanceCount que debe cumplir la comprobación de seguridad EnsureAvailability durante las operaciones como actualizar o desactivar el nodo.
El número real que se usa es max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ).
Tenga en cuenta que si InstanceCount se establece en -1, durante el cálculo de MinInstancePercentage, -1 se convierte primero en el número de nodos en los que se permite colocar las instancias según las restricciones de colocación en el servicio.
Flags
Tipo: entero
Obligatoria: no
Marcas que indican si se establecen otras propiedades. Cada una de las propiedades asociadas corresponde a una marca, especificada a continuación, que, si se establece, indica que se especifica la propiedad .
Esta propiedad puede ser una combinación de esas marcas obtenidas mediante el operador "OR" bit a bit.
Por ejemplo, si el valor proporcionado es 1, se establecen las marcas de InstanceCloseDelayDuration.
- Ninguno: no indica que se establezcan otras propiedades. El valor predeterminado es cero.
- InstanceCloseDelayDuration: indica que la propiedad InstanceCloseDelayDuration está establecida. El valor es 1.
- InstanceRestartWaitDuration: indica que la propiedad InstanceRestartWaitDurationSeconds está establecida. El valor es 2.
InstanceCloseDelayDurationSeconds
Tipo: entero (int64)
Obligatoria: no
InclusiveMaximum: 4294967295
InclusiveMinimum: 0
Duración en segundos, para esperar antes de que se cierre una instancia sin estado, para permitir que las solicitudes activas se agoten correctamente. Esto sería efectivo cuando la instancia se cierra durante la actualización de la aplicación o clúster y deshabilitación del nodo.
El punto de conexión expuesto en esta instancia se quita antes de iniciar el retraso, lo que impide nuevas conexiones a esta instancia.
Además, los clientes que se han suscrito a eventos de cambio de punto de conexión de servicio(https://docs.microsoft.com/dotnet/api/system.fabric.fabricclient.servicemanagementclient.registerservicenotificationfilterasync), pueden hacer lo siguiente al recibir la notificación de eliminación del punto de conexión: - Deje de enviar nuevas solicitudes a esta instancia.
- Cierre las conexiones existentes después de que se hayan completado las solicitudes en curso.
- Conéctese a otra instancia de la partición de servicio para futuras solicitudes.
Tenga en cuenta que el valor predeterminado de InstanceCloseDelayDuration es 0, lo que indica que no habrá ningún retraso ni eliminación del punto de conexión antes de cerrar la instancia.
InstanceLifecycleDescription
Tipo: InstanceLifecycleDescription
Obligatoria: no
Define cómo se comportarán las instancias de este servicio durante su ciclo de vida.
InstanceRestartWaitDurationSeconds
Tipo: entero (int64)
Obligatoria: no
InclusiveMaximum: 4294967295
InclusiveMinimum: 0
Cuando una instancia sin estado deja de funcionar, se inicia este temporizador. Cuando expire Service Fabric creará una nueva instancia en cualquier nodo del clúster.
Esta configuración consiste en reducir la creación innecesaria de una nueva instancia en situaciones en las que es probable que la instancia se recupere en poco tiempo. Por ejemplo, durante una actualización.
El valor predeterminado es 0, lo que indica que cuando la instancia sin estado deja de funcionar, Service Fabric comenzará inmediatamente a crear su reemplazo.