官术网_书友最值得收藏!

Support for partitioning

Service Fabric supports partitioning of Microservices. Partitioning is the concept of dividing data and compute into smaller units to improve the scalability and performance of a service.

A stateless Microservice can be of two types – one which stores the state externally and two which does not store a state. These Microservices are rarely partitioned as the scalability and the performance of the service can be enhanced by increasing the number of instances running the service. The only reason to partition a stateless service would be to achieve specialized routing requirements.

Service Fabric natively supports partitioning of state for a stateful service, thereby reducing the overheads on the developers around maintaining and replicating state across partition replicas. A partition of a stateful service can be thought of as a scale unit that is highly reliable through replicas distributed and load balanced across the nodes in a Service Fabric cluster. Service Fabric controls the optimal distribution of the partitions across multiple nodes, allowing them to grow dynamically. The partitions are rebalanced regularly to ensure resource availability to each service deployed on the cluster.

For instance, if an application with ten partitions each with three replicas is deployed on a five node cluster, Service Fabric will distribute the instances across the nodes with two primary replicas on each node:

Partitioning on a five node cluster

Later, if you scale up the cluster to ten nodes, Service Fabric will rebalance the primary replicas across all the 10 nodes:

Partitioning on 10 node cluster

The same logic will apply when the cluster is scaled down.

主站蜘蛛池模板: 湛江市| 边坝县| 崇文区| 东兴市| 涟源市| 淄博市| 阿拉善盟| 翁牛特旗| 玉门市| 绩溪县| 金秀| 邓州市| 惠东县| 许昌市| 辉南县| 泾源县| 靖安县| 临洮县| 化德县| 游戏| 文登市| 泽普县| 开封市| 曲水县| 五指山市| 子长县| 南开区| 准格尔旗| 方城县| 通江县| 白玉县| 富源县| 中宁县| 女性| 连城县| 济宁市| 大足县| 巴中市| 蓬莱市| 贡觉县| 西平县|