데이터 작업 갯수 정하기

- 일정 횟수를 작업하고자 할 때 여러개의 프로그램을 동시에 작업하는 환경

- 이러한 환경에서 정확한 작업의 수를 체크하고자 한다면 어떻게 해야할까?

 

문제점

1) 완료되었을 때만 카운트한다

=> 동시에 작업 중인 다른 작업들이 완료되었을 때 초과 작업이 발생한다.

 

2) 가져갔을 때 +1을 하고 실패하면 -1을 카운팅하게 한다

=> 프로그램이 중간에 오류가 나거나 통신 상의 오류로 마이너스 카운트를 실패한다면 오류가 발생한다.

 

3) 2번의 방법을 참고하여 작업을 가져갔을 때 임시 작업수를 +1 시키고 실제 완료 시 완료 횟수를 카운팅한다.

    그리고 마지막 작업이 완료되었을 때 실제 작업 완료 수로 변경한다.

=> 마지막 작업이 실패 시에 결과 반영에 대한 문제가 발생한다.

=> 하지만 2번에 비하여 훨씬 오류 확률이 낮다.

 

4) 3번의 방법을 쓰되 완료 시에 전체 리스트를 확인하여 마지막 작업 이후 일정 시간이 지난 리스트들 가져와서 임시 작업수를 실제 완료 수로 변경

=> 작업의 갯수가 너무 많으면 문제가 될 수 있으니 완료된 작업은 별도의 테이블로 관리하기.

+ Recent posts