Service Fabric 服务模型 XML 架构元素
PartitionDescriptionGroup 组
定义服务的分区方案。
Attribute | Value |
---|---|
content | 3 个元素 |
XML 源
<xs:group xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="PartitionDescriptionGroup">
<xs:annotation>
<xs:documentation>Defines the partitioning scheme for a service.</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="SingletonPartition">
<xs:annotation>
<xs:documentation>Declares that this service has only one partition.</xs:documentation>
</xs:annotation>
<xs:complexType/>
</xs:element>
<xs:element name="UniformInt64Partition">
<xs:annotation>
<xs:documentation>Describes a uniform partitioning scheme based on Int64 keys.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="PartitionCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Total number of partitions (positive integer). Each partition is responsible for a non-overlapping subrange of the overall partition key range.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="LowKey" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Inclusive low range of the partition key (long).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="HighKey" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Inclusive high range of the partition key (long).</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="NamedPartition">
<xs:annotation>
<xs:documentation>Describes a named partitioning scheme based on names for each partition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="Partition">
<xs:annotation>
<xs:documentation>Describes a partition by name.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="Name" use="required">
<xs:annotation>
<xs:documentation>The name of the partition</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:group>
Content 元素详细信息
SingletonPartition
声明此服务仅包含一个分区。
Attribute | 值 |
---|---|
name | SingletonPartition |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="SingletonPartition">
<xs:annotation>
<xs:documentation>Declares that this service has only one partition.</xs:documentation>
</xs:annotation>
<xs:complexType/>
</xs:element>
UniformInt64Partition
描述基于 Int64 键的统一分区方案。
Attribute | 值 |
---|---|
name | UniformInt64Partition |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="UniformInt64Partition">
<xs:annotation>
<xs:documentation>Describes a uniform partitioning scheme based on Int64 keys.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="PartitionCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Total number of partitions (positive integer). Each partition is responsible for a non-overlapping subrange of the overall partition key range.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="LowKey" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Inclusive low range of the partition key (long).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="HighKey" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>Inclusive high range of the partition key (long).</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
NamedPartition
描述基于每个分区的名称的命名分区方案。
属性 | 值 |
---|---|
name | NamedPartition |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="NamedPartition">
<xs:annotation>
<xs:documentation>Describes a named partitioning scheme based on names for each partition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence maxOccurs="unbounded">
<xs:element name="Partition">
<xs:annotation>
<xs:documentation>Describes a partition by name.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="Name" use="required">
<xs:annotation>
<xs:documentation>The name of the partition</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
ScalingPolicyMechanismGroup 组
定义缩放机制。
Attribute | Value |
---|---|
content | 2 个元素 |
XML 源
<xs:group xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ScalingPolicyMechanismGroup">
<xs:annotation>
<xs:documentation>Defines the scaling mechanism.</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="InstanceCountScalingMechanism" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a mechanism for increasing the instance count of a partition. This is for stateless services only.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MinInstanceCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The minimum number of instances.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="MaxInstanceCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The maximum number of instances..</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIncrement" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The number of instances by which to perform the upshift/downshift.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="AddRemoveIncrementalNamedPartitionScalingMechanism" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a mechanism for adding or removing named partitions.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MinPartitionCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The minimum number of partitions.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="MaxPartitionCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The maximum number of partitions.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIncrement" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The number of partitions by which to perform the upshift/downshift.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:group>
Content 元素详细信息
InstanceCountScalingMechanism
定义用于增加分区实例数的机制。 此属性仅适用于无状态服务。
属性 | 值 |
---|---|
name | InstanceCountScalingMechanism |
minOccurs | 0 |
maxOccurs | 1 |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="InstanceCountScalingMechanism" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a mechanism for increasing the instance count of a partition. This is for stateless services only.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MinInstanceCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The minimum number of instances.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="MaxInstanceCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The maximum number of instances..</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIncrement" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The number of instances by which to perform the upshift/downshift.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
AddRemoveIncrementalNamedPartitionScalingMechanism
定义用于添加或删除已命名分区的机制。
属性 | 值 |
---|---|
name | AddRemoveIncrementalNamedPartitionScalingMechanism |
minOccurs | 0 |
maxOccurs | 1 |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AddRemoveIncrementalNamedPartitionScalingMechanism" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a mechanism for adding or removing named partitions.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MinPartitionCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The minimum number of partitions.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="MaxPartitionCount" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The maximum number of partitions.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIncrement" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The number of partitions by which to perform the upshift/downshift.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
ScalingPolicyTriggerGroup 组
定义缩放触发器。
Attribute | Value |
---|---|
content | 2 个元素 |
XML 源
<xs:group xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="ScalingPolicyTriggerGroup">
<xs:annotation>
<xs:documentation>Defines the scaling trigger.</xs:documentation>
</xs:annotation>
<xs:choice>
<xs:element name="AveragePartitionLoadScalingTrigger" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a scaling mechanism based on the average load of replicas of a partition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MetricName" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="AverageServiceLoadScalingTrigger" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a scaling mechanism based on the average load of partitions of a service.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MetricName" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="UseOnlyPrimaryLoad" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Use load of primary replica as average load of partition.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:group>
Content 元素详细信息
AveragePartitionLoadScalingTrigger
定义基于分区副本平均负载的缩放机制。
属性 | 值 |
---|---|
name | AveragePartitionLoadScalingTrigger |
minOccurs | 0 |
maxOccurs | 1 |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AveragePartitionLoadScalingTrigger" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a scaling mechanism based on the average load of replicas of a partition.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MetricName" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
AverageServiceLoadScalingTrigger
定义基于服务分区平均负载的缩放机制。
属性 | 值 |
---|---|
name | AverageServiceLoadScalingTrigger |
minOccurs | 0 |
maxOccurs | 1 |
XML 源
<xs:element xmlns:xs="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/2011/01/fabric" name="AverageServiceLoadScalingTrigger" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation>Defines a scaling mechanism based on the average load of partitions of a service.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="MetricName" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The name of metric which should be used for scaling operations.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="LowerLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The lower limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="UpperLoadThreshold" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The upper limit of the load value of a metric.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="ScaleIntervalInSeconds" type="xs:string" use="required">
<xs:annotation>
<xs:documentation>The time interval in seconds to be considered for scaling.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="UseOnlyPrimaryLoad" type="xs:string" use="optional">
<xs:annotation>
<xs:documentation>Use load of primary replica as average load of partition.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>