2010-03-22 3 views
3

우리 제품에는 주로 RESTful 아키텍처가 있습니다. 이것은 새로운 요구 사항을 제외하고 거의 모든 필수 기능을 잘 구현할 수있게 해줍니다.RESTful 아키텍처에서 배치와 같은 연산을 구현하는 가장 좋은 방법은 무엇입니까?

대규모 DB 작업을 동 기적으로 수행 할 수있는 페이지를 구현해야합니다. 그들은 그들이 실수를했다고 깨달은 경우 중간에서 작업을 중단 할 수 있습니다 (작업을 완료하고 실행 취소 작업을 수행하기를 기다리는 것이 아니라).

어떤 것이 가장 좋을지에 관해 몇 가지 지침을 줄 수 있는지 궁금합니다. 이러한 기능을 구현하는 방법은?

건배! Nirav

답변

1

일괄 작업 집합을 캡슐화하는 리소스는 어떻습니까? 리소스를 만드는 것은 작업을 시작하는 것을 의미합니다 (작업이 수행해야하는 작업을 나타내는 데이터는 POST를 통해 제출됩니다). 리소스를 업데이트하면 처리 중에 리소스를 중지하거나 수정할 수 있습니다.

0

큰 작업을 별도의 스레드에서 시작할 것입니다. 사용자에게 끊임없이 업데이트되는 스레드 상태와 취소 버튼을 표시하십시오. 사용자가 취소 버튼을 클릭하면 스레드를 종료합니다.

이것은 이전에 비슷한 방법으로 구현 한 방법입니다.

아이디어는 즉시 컨트롤을 다시 제공하지만 취소를 제외하고 스레드가 완료 될 때까지 아무 것도하지 못하도록합니다.

일반적으로 "작업 대기열"과 대기열을 관리하는 방법이 필요합니다.