2014-07-07 2 views
2

WebJob에서 Azure 웹 사이트를 중지 할 수있는 방법이 있습니까?WebJob 내에서 웹 사이트 중지

노드에서 실행되는 Ghost를 사용하는 Azure 웹 사이트가 있습니다. 사이트가 실행되고 있지 않은 동안 이상적으로 수행해야하는 Ghost 데이터베이스 파일의 백업을 예약하려고합니다. Kudu PowerShell 콘솔을 사용하여 Node.exe 프로세스를 종료하여 일시적으로 사이트를 중지 할 수 있습니다.

WebJob에서 동일한 작업을 수행하려고하면 프로세스가 종료되지 않습니다. 아마도 WebJob이 다른 컨텍스트에서 실행 중이며 node.exe 프로세스가 표시되지 않기 때문일 수 있습니다.

WebJob 내에서 사이트를 중지하거나 시작할 수있는 방법이 있습니까?

답변

2

사실 원래 node.exe 프로세스를 종결하려고 할 때 WebJob에서 뭔가 잘못하고있는 것처럼 보입니다. .

@trailmax는 사이트 종료 (즉, w3wp 프로세스)가 WebJob (실제로 Kudu 사이트)을 종료한다는 점에서 올바르지 만 웹 사이트에서 node.exe을 종료 할 수 있습니다. 사이트에 다른 연결이 설정되면 곧 다시 시작되므로 안타깝게도 최상의 해결책은 아닙니다. WebJob이 작업을 마칠 때까지 어떤 종류의 비동기 프로세스가 시작되어 node.exe을 계속 확인하고 종료하지 않는 한.

3

Azure 웹 사이트는 HTTP API를 통해 제어됩니다. WebJob에서 HTTP 요청을 발행하여 웹 사이트를 중지 할 수 있습니다. 요청의 here for details을 참조하십시오.

그러나 WebJob은 웹 사이트와 동일한 컨텍스트에서 실행됩니다. 따라서 사이트가 중지되면 WebJob도 중지됩니다. 그리고 WebJob이 당신을 위해 거기에 없을 것이기 때문에 당신의 사이트를 다시 온라인으로 가져올 다른 방법이 있어야합니다 ...

+1

"WebJob은 웹 사이트와 동일한 컨텍스트에서 실행되므로 사이트가 중지되면 WebJob도 중지됩니다." 여러 번 온라인으로하지만 그 행동을 본 적이 없습니다. 나는 내 웹 사이트와 함께 실행되는 지속적인 webjobs를 가지고 있으며 사이트를 중지하는 것은 절대적으로 webjobs를 멈추지 않습니다. AlwaysOn의 설정은 동작을 변경하지 않습니다. – Howiecamp

+0

@Howiecamp. 이것은 내가 보는 행동이기도합니다. 웹 사이트를 중단하면 실제로 작업을 중단하고 싶지만, 불행히도 그렇지 않습니다. – Carl

관련 문제