ActivationCountBasedPlacement 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
각 서버에서 최근에 활성화된 조직의 수에 따라 약 짝수 부하를 달성하려고 시도하는 배치 전략입니다.
[System.Serializable]
public class ActivationCountBasedPlacement : Orleans.Runtime.PlacementStrategy
[System.Serializable]
[Orleans.GenerateSerializer]
[Orleans.Immutable]
[Orleans.SuppressReferenceTracking]
public sealed class ActivationCountBasedPlacement : Orleans.Runtime.PlacementStrategy
[<System.Serializable>]
type ActivationCountBasedPlacement = class
inherit PlacementStrategy
[<System.Serializable>]
[<Orleans.GenerateSerializer>]
[<Orleans.Immutable>]
[<Orleans.SuppressReferenceTracking>]
type ActivationCountBasedPlacement = class
inherit PlacementStrategy
Public Class ActivationCountBasedPlacement
Inherits PlacementStrategy
Public NotInheritable Class ActivationCountBasedPlacement
Inherits PlacementStrategy
- 상속
- 특성
설명
이 배치 전략의 의도는 최근에 사용 중인 조직의 수에 따라 부하가 가장 적은 서버에 새 조직 활성화를 배치하는 것입니다. 여기에는 모든 서버가 정기적으로 총 활성화 수를 다른 모든 서버에 게시하는 메커니즘이 포함됩니다. 그런 다음 배치 디렉터는 가장 최근에 보고된 활성화 횟수를 검사하고 현재 서버의 배치 디렉터가 수행한 최근 활성화 횟수를 기반으로 현재 활성화 횟수를 예측하여 활성화가 가장 적을 것으로 예상되는 서버를 선택합니다. 디렉터는 여러 개의 개별 서버가 동일한 서버에 오버로드되는 것을 방지하기 위해 이 예측을 수행할 때 임의로 여러 서버를 선택합니다. 기본적으로 두 서버는 임의로 선택되지만 이 값은 Orleans.Runtime.ActivationCountBasedPlacementOptions
를 통해 구성할 수 있습니다.
이 알고리즘은 Michael David Mitzenmacher https://www.eecs.harvard.edu/~michaelm/postscripts/mythesis.pdf의 임의 부하 분산에서 두 가지 선택 항목의 힘이라는 논문을 기반으로 하며 NGINX 및 "두 가지 선택 항목의 힘" Load-Balancing 알고리즘 https://www.nginx.com/blog/nginx-power-of-two-choices-load-balancing-algorithm/문서에 설명된 대로 분산 부하 분산을 위해 NGINX에서도 사용됩니다.
이 배치 전략은 특성을 조직에 추가하여 ActivationCountBasedPlacementAttribute 구성됩니다.
생성자
ActivationCountBasedPlacement() |
각 서버에서 최근에 활성화된 조직의 수에 따라 약 짝수 부하를 달성하려고 시도하는 배치 전략입니다. |
속성
IsUsingGrainDirectory |
이 배치 전략에 조직 디렉터리에 활성화를 등록해야 하는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 PlacementStrategy) |
메서드
Initialize(GrainProperties) |
제공된 조직 속성을 사용하여 이 형식의 인스턴스를 초기화합니다. (다음에서 상속됨 PlacementStrategy) |
PopulateGrainProperties(IServiceProvider, Type, GrainType, Dictionary<String,String>) |
기본 배치 전략을 지정하기 위해 조직 속성을 채웁니다. (다음에서 상속됨 PlacementStrategy) |