문제

여기에 문제가 있습니다. 예를 들어 매월 잔액을 생성하는 등 비즈니스 정기적 인 작업이 있다고 가정합니다. 해당 작업은 농장에서 실행될 수 있으므로 정기 작업을 실행하는 컴퓨터가 실패하면 다른 컴퓨터로 전달해야합니다.

그렇다면 어떻게 정기적 인 작업을 지속하고 농장에서 안전하게 만들 수 있습니까? 나는 지속적이고 공유 된 대기열에서 생각했지만 상당히 붙어 있습니다.

어떤 아이디어?

미리 감사드립니다.

도움이 되었습니까?

해결책

질문에는 많은 요인이 누락되었습니다. 작업에 어떻게 액세스하고 있습니까? 웹 서비스인가요? 원격 절차 호출? 자체적으로 실행되고 결과를 공유 폴더에 저장합니까?

그것이 단지 웹 서비스라면 솔루션이 순서대로 쿼리하는 것일 수 있습니다. 하나를 사용할 수 없다면 다음으로 진행할 수 있습니다 ... 아마도 RPC는 동일한 절차로 처리 될 수 있습니다. 물론 이것은 잘 확장되지 않으며 약간의 임시이지만 다른 시간에 시간이 없다면 트릭을 수행 할 수 있습니다.

실제로 확장하는 데 필요한 시간과 돈이 있다면 조절 재구성 이것이 당신이 찾고있는 결함 공차의 기초입니다. 물론 이것은 컨트롤러 (@jldupont가 호출하는 감독 기계)와 모든 것을 함께 유지하기위한 많은 메커니즘과 노력을 의미합니다.

정말로 필요한 경우에만 가치가 있습니다. 시간과 돈 모두에 대한 큰 투자이므로 시원하기 때문에 대담하게하지 마십시오.

다른 팁

1에서 1에서 1로가는 것은 항상 큰 단계입니다.

옵션 1

(무엇보다도) 필요합니다.

  • 감독자 기계
  • 심장 박동 프로토콜 / 고장 감지
  • 작업 일정에 대한 선거 프로토콜
  • 작업 스케줄러
  • 직업보고

등.

옵션 2

여러 기계가 작업을 수행하고 그 중 하나에서 성공적인 출력을 선택하십시오 (또는 필요하다고 생각되면 다수 투표를 사용하십시오).

기술 스택이 무엇인지 확실하지 않지만 석영 (또는 quartz.net .NET 스택을 사용하는 경우). Quartz는 강력한 실패/HA 기능을 갖춘 엔터프라이즈 작업 스케줄러입니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top