1
최근 지연된 작업의 일정을 다시 잡을 때 작업이 똑같은 두 가지 이상의 작업으로 나타납니다. 나는 4 개의 똑같은 작업으로 태어난 직업이있다.Google App Engine이 대기열에 지연된 작업을 추가하면 여러 작업이 발생합니다.
Queue q = null;
if (queueName == null)
q = QueueFactory.getDefaultQueue();
else
q = QueueFactory.getQueue(queueName);
TaskOptions to = TaskOptions.Builder.withPayload(this);
q.add(to);
이 코드는 매우 간단하지만 응용 프로그램에서 많은 문제를 일으 킵니다.
to.taskName(TASK_NAME);
은 아무 소용와 산란 중복 작업을 방지하기 위해 : 우리는 심지어 같은 작업에 이름을주고 노력했다. 다른 사람이이 문제를 보았거나 중복을 막을 수있는 해결책이 있습니까?
지연된 작업을 왜 다시 계획하고 있습니까? 태스크 핸들러에서이를 수행하는 경우 동일한 태스크가 두 번 이상 실행될 수 있으므로 여러 태스크가 작성 될 수 있습니다. – mjibson
내가 왜 일정을 변경할지 이유의 예. 내가 작업에서 사용자의 문서를 처리하고 있다고 가정 해 보겠습니다. 작업은 Frontend 인스턴스에서 실행되므로 10 분 타이머를 준수해야합니다. 작업의 현재 상태를 유지하려면 시간 제한에 가까워지면 작업을 완료하기 위해 작업을 다시 예약해야합니다. – ndixon