관리 요청 처리 중 생성된 통계
관리 프로세스는 관리 프로세스 작업의 요청 처리 활동을 모니터링하는 데 도움이 되는 통계를 기록합니다.
처리가 예약된 모든 관리 프로세스 요청은 관리 요청 데이터베이스( ADMIN4.NSF )에서 시작됩니다. 요청은 정기적으로 ADMIN4.NSF 에서 검색되어 요청 유형 및 일정에 따라 다양한 ID 테이블에 임시로 저장됩니다. 특정 요청을 일정에 따라 처리할 때까지 ID 테이블에 남아 있습니다. 각 ID 테이블에 대한 통계는 ID 테이블 사용에 대한 피드백과 관리 프로세스 작업 부하에 대한 지표를 제공하기 위해 유지 관리됩니다. 이러한 통계에서 참조하는 모든 ID 테이블에는 처리되어야 하는 관리 프로세스 요청의 NoteID가 포함되어 있습니다.
관리 요청이 적절한 ID 테이블로 올바르게 분류되면 처리할 수 있습니다. 적절한 예약된 시간이 되면 해당 메시지는 사용 가능한 여러 메시지 대기열 중 하나에 배치됩니다. ID 테이블에 대해 유지되는 통계와 비슷하게, 통계는 각 메시지 큐에 대해 유지되어 메시지 큐 사용에 대한 피드백을 제공합니다.
또한 관리 프로세스 일괄 요청에 대한 요청 처리 시간에 대한 피드백을 제공하기 위해 세 번째 통계 그룹도 제공됩니다.
이러한 통계는 다음 세 가지 영역으로 구분됩니다.
관리 프로세스 작업에 대한 통계 |
해당 통계 제목 |
---|---|
요청 ID 테이블 모니터링 |
ADMINP.요청ID테이블 |
요청 메시지 대기열 |
ADMINP.요청 메시지 대기열 |
일괄 요청 처리 |
ADMINP.배치요청처리 |
이러한 통계는 행정 프로세스 활동을 나타내기 위해 제공됩니다. 통계는 실제로 진행 상황을 모니터링할 방법을 제공하지 않습니다. 예를 들어, 통계를 검토하고 어느 메시지 큐에서든 "대기" 통계가 대량으로 있는 경우 모든 요청 처리 스레드가 장기 실행 요청을 실행 중이고 관리 프로세스를 재구성해야 할 수도 있음을 나타냅니다. 예를 들어, 추가 처리 스레드를 추가하거나 전용 스레드를 구성해야 할 수도 있습니다.
Collection tables
수집 테이블은 일정 시간별로 구분된 다음 요청 유형별로 구분됩니다. 이러한 ID 테이블에는 요청에 대한 관리 프로세스 요청의 NoteID가 포함되어 있습니다. 컬렉션 테이블에 NoteID가 추가될 때마다 TotalCount 통계가 업데이트됩니다. TotalCount는 컬렉션 테이블에 저장된 적이 있는 NoteID의 총 수를 나타냅니다. 예를 들어,
ADMINP.RequestIdTables.CollectionTables.Daily.DirectoryManyDoc.TotalCount = 40
각 ID 테이블에 대해 두 번째 통계도 유지 관리되며, 이는 현재 "대기" 테이블에 저장된 NoteID 수를 나타냅니다.
다음 예에서는 요청 ID 테이블 모니터링의 컬렉션 섹션에 있는 잠재적인 통계를 보여줍니다. 이 예제에는 Immediate 및 Interval 요청만 포함됩니다.
- 즉시(ADMINP.RequestIdTables.CollectionTables.Immediate)
올서버
디렉토리OneDoc
디렉토리ManyDoc
수정ACL
수정디자인요소
읽지 않은 목록 수정
수정자작성자
수정PersonDoc
- 간격(ADMINP.RequestIdTables.CollectionTables.Interval)
올서버
디렉토리OneDoc
디렉토리ManyDoc
수정ACL
수정디자인요소
읽지 않은 목록 수정
수정자작성자
수정PersonDoc
각 통계에는 TotalCount 및 Waiting에 대한 통계가 포함되어 있습니다. 예를 들어:
ADMINP.RequestIdTables.CollectionTables.Immediate.DirectoryOneDoc.대기 = 0
ADMINP.RequestIdTables.CollectionTables.Interval.DirectoryOneDoc.TotalCount = 1
BatchRequest tables
요청 일정을 처리할 시간이 되면 컬렉션 테이블은 다른 그룹의 ID 테이블, BatchRequest ID 테이블로 전환됩니다. BatchRequest ID 테이블에는 일괄 처리 요청에서 처리할 NoteID 그룹이 포함되어 있습니다. 이러한 테이블은 일괄 처리된 요청을 그룹화하거나 공통 일정 유형에 따라 요청을 그룹화하는 데 사용됩니다. BatchRequest ID 테이블의 경우, 연관된 일괄 요청이 실행되어 테이블이 비워질 때까지 테이블은 그대로 유지됩니다. BatchRequest 통계의 예는 다음과 같습니다.
ADMINP.요청Id테이블.배치요청
BatchedRequest ID 테이블에 저장된 NoteID는 특수한 경우입니다. 트리거 요청은 일괄 요청을 시작하기 위해 PrimaryTables 중 하나에 포함됩니다. 실제 요청 처리에서는 어떤 요청을 처리해야 하는지에 대한 추가 정보를 얻기 위해 해당 BatchRequest 테이블을 참조합니다.
SecondaryRequest tables
SecondaryRequest 테이블이라고 불리는 ID 테이블 그룹도 있습니다. SecondaryRequest 테이블은 시간 제한 요청, 타사 요청, 빠른 재시도 요청 등 덜 일반적인 일정 유형을 위한 컬렉션 영역입니다. SecondaryRequest 통계의 예는 여기에 표시됩니다.
ADMINP.요청Id테이블.보조요청
PrimaryRequest tables
BatchRequest 테이블에 저장된 요청을 제외한 모든 요청은 결국 PrimaryRequest 테이블을 통해 전달됩니다. PrimaryRequest 테이블은 요청을 처리하기 위해 예약되기 전 마지막 단기 저장 위치입니다. PrimaryRequest 통계의 예는 다음과 같습니다.
ADMINP.요청Id테이블.주요요청
기본 요청 테이블 |
설명 및 샘플 통계 |
---|---|
즉시 테이블 |
즉시 처리되도록 예약된 모든 요청이 포함되어 있습니다. ADMINP.요청 ID 테이블.주요 요청.즉시 |
간격표 |
Interval 처리를 위해 예약된 모든 요청이 포함되어 있습니다. ADMINP.요청 ID 테이블.주요 요청.간격 |
일반 테이블 |
Immediate 또는 Interval Table에 포함되지 않은 모든 요청을 포함합니다. 여기에는 SecondaryRequest Table에 저장된 모든 요청이 포함됩니다. ADMINP.요청 ID 테이블.기본 요청.일반 |
각 NoteID는 PrimaryRequest 테이블에서 제거되어 요청 일정의 다음 단계에 배치됩니다. 요청은 먼저 Immediate 테이블에서 검색되고, 그 다음에 Interval 테이블, 마지막으로 General 테이블에서 검색됩니다. 이를 통해 요청 일정의 긴급성이 유지됩니다. 요청은 검색되면 패키징되어 요청 메시지 큐에 저장됩니다.
Request Message Queues
요청 메시지 큐는 요청 처리 스레드에 정보를 제공합니다. 처리할 요청이 있으면, 디스패칭 스레드는 요청 메시지를 메시지 큐에 넣고 요청 처리 스레드에 수행할 작업이 있음을 알립니다. 요청 처리 스레드는 메시지를 수락하고 그에 따라 요청을 처리합니다. 메시지가 메시지 큐에 저장되면 통계가 업데이트되고 타임스탬프가 기록됩니다. 메시지가 메시지 큐에서 제거되면 통계도 업데이트되고, 타임스탬프를 사용하여 메시지가 큐에 저장된 시간을 확인합니다. 처리 스레드는 네 가지 메시지 큐를 모니터링합니다. 즉, 즉시, 간격, 일반 용도, 폴링입니다.
- ADMINP.ReqMsgQueue.즉시
- ADMINP.ReqMsgQueue.간격
- ADMINP.ReqMsgQueue.GeneralPurpose
- ADMINP.ReqMsgQueue.Poll 각각
폴 메시지 대기열과 폴 스레드는 메일 정책 관리에만 전념합니다.
특수 목적 스레드가 즉시 일정 요청을 처리하도록 구성된 경우에만 즉시 메시지 대기열이 존재합니다. 즉시 메시지 대기열이 있는 경우 즉시 스케줄링의 대상이 되는 모든 요청은 이 스레드에 배치됩니다. 유휴 처리 스레드는 다음 메시지 큐로 넘어가기 전에 즉시 메시지 큐를 확인합니다.
Interval 메시지 큐는 Interval 일정 요청을 처리하도록 특수 목적 스레드가 구성된 경우에만 존재합니다. Interval 메시지 큐가 있으면 Interval 스케줄링을 대상으로 하는 모든 요청은 이 스레드에 배치됩니다. 유휴 처리 스레드는 즉시 메시지 큐(존재하는 경우)를 확인한 다음, 처리할 요청이 있는지 간격 메시지 큐를 확인합니다.
일반 용도 메시지 큐는 모든 스케줄링 유형을 처리하지만, 특수 용도 스레드가 있는 경우 작업을 수행할 때 마지막으로 확인하는 큐가 일반 용도 메시지 큐입니다.
Domino ® 서버 콘솔의 ReqMsgQue 통계 예:
ADMINP.ReqMsgQueue.Interval.AverageWaitTime = 0시간 0분 0초
ADMINP.ReqMsgQueue.Interval.TotalCount = 1
ADMINP.ReqMsgQueue.Interval.Waiting = 0
요청을 처리하기 위해 검색되면 장기 실행 일괄 요청에 대한 통계가 유지됩니다.
Batch Request Processing
각 배치 요청에 대해 배치를 처리하는 데 걸리는 최대 시간과 배치를 처리하는 데 걸리는 평균 시간을 모니터링하기 위해 통계가 유지됩니다.
Domino ® 서버 콘솔의 처리 시간 통계에 대한 예:
ADMINP.BatchReqProcessing.ModACL.AverageProcTime = 0시간 0분 15초
ADMINP.BatchReqProcessing.ModACL.MaxProcTime = 0시간 0분 15초
ADMINP.BatchReqProcessing.ModReaderAuthor.AverageProcTime = 0시간 0분 16초
ADMINP.BatchReqProcessing.ModReaderAuthor.MaxProcTime = 0시간 0분 16초