Java에서 Disruptor를 연구 중입니다. 나는 게이팅 시퀀스의 의미가 무엇인지 이해하지 못합니다. 나는 핵심 부분이 링 버퍼이고 모든 버퍼가 시퀀스 번호와 연관되어 있음을 안다.Disruptor : Gating Sequence
2
A
답변
1
실제로 LMAX 구현의 핵심 부분은 Sequencer
과 Sequence
입니다. 그래서 ringBuffer
을 구현합니다. 귀하가 참조하는 gatingSequences
은 ringBuffer
(또는 기타 Sequencer
)에 "구독"된 각 Sequencer
에 커서 역할을합니다. 따라서 Sequencer
은 연결된 Sequencers
에 대해 여러 개의 커서를 가질 수 있습니다 (tryNext()
을 호출하여 다음 sequence
을 만지게 할 수 있습니다).
건배!
2
게이팅 시퀀스의 목적은 RingBuffer
이 래핑되는 것을 방지하기 위해 게시자를 게이트하는 것입니다.