2009-12-28 4 views
1

내가 작업하고있는 사이트에서 요청할 수있는 두 가지 클래스가 있습니다. 한편으로, 그들은 재건하고 재배치해야 할 물건을 가지고 있습니다. 우리가 멋진 스플래시 화면을 표시하고 백업 할 때 사이트를 철저히 테스트하기 때문에 이것들을 "다운 타임"변경으로 간주합니다.web.config 편집 - 다운 타임의 원인?

다른 한편으로, 우리는 web.config와 분리 된 다양한 텍스트 변경, 기능 켜기 및 끄기 등을 요청합니다. 우리는 배포 창 내부 또는 외부에서이 작업을 수행 할 것을 제안합니다. 파일을 편집하고 변경 내용이 올바른지 확인한 다음 다시 작업하기 만하면됩니다.

그러나 클라이언트 측 스마트 사용자 중 한 사람은 web.config 편집이 응용 프로그램 풀을 재활용한다는 점을 지적 했으므로 그 시간은 다운 타임입니다. 나는 결코 눈치 채지 못했지만, 맞을 것으로 생각합니다. 앱 풀을 사용할 수없는 동안에는 앱이 다운되었습니다.

하지만 얼마나 걸리나요? 다운 타임 간격으로 클라이언트의 편안함을 분류 해 줄 것을 요청하는 것이 아니라 일반적인 생각입니까? 아니면 web.config 편집에 두 번째 또는 두 가지 응용 프로그램 중단 시간이 수반 될지 걱정하지 않아도됩니까?

+0

오기 전에 : 이것은 다른 web.config 편집 질문 -http : // stackoverflow와 관련이 있습니다.co.kr/questions/178342/what-happens-when-i-edit-web-config -하지만 SharePoint를 사용하지 않고 세션 상태에 관심이 없습니다 (쿠키가 있습니다). – dnord

답변

3

IIS는 응용 프로그램 풀을 정상적으로 재활용하며, 이러한 재활용이 우려를 불러 일으키지 않는 경우 IIS는이 응용 프로그램 풀을 정상적으로 재활용하지 않습니다.

사용자는 "서비스를 사용할 수 없음"오류 인 afaik를받지 않아야합니다.

+0

이것은.입니다. 앱 풀은 설정 (시간, 메모리 소비 등)에 따라 어쨌든 정기적으로 재활용됩니다. 간단한 web.config 변경은 in-proc 세션 상태를 사용하는 것과 같은 어리석은 짓을하지 않는 한 앱에 부정적인 영향을 미치지 않아야합니다. 그렇다면 무언가를 고치려고 노력해야합니다. – Chris

3

중단 시간이 염려되는 경우가 많습니다. 이러한 설정을 데이터베이스로 옮기는 것이 좋습니다.

그렇다면 가동 중단 시간은 최소화 될 것입니다. web.config 파일을 저장하면 응용 프로그램 풀이 재활용되며 밀리 초 단위로 말합니다.

5

지금까지 모든 것이 정확합니다.

그러나 사용자가 가져온 값이 캐시되지 않는 한이 가동 중지 시간을 피할 수있는 방법이 있습니다.

.config 파일의 일부를 다른 파일로 옮길 수 있습니다.이 파일은 응용 프로그램 풀을 recylce하지 않습니다. 그런 다음 외부 파일은 다음과 같을 것이다

<appSettings file="moresettings.config"></appSettings> 

을 : 그것은 web.config 파일에서 다음과 같이 보일 것이다

<?xml version="1.0" encoding="utf-8" ?> 
<appSettings> 
<add key="SOMEKEY" value="MYVALUE"/> 
</appSettings> 
2

으로는 IIS가 실제로 응용 프로그램 풀을 재활용하고, 말했다 . 이는 전체 iisreset을 수행하는 것만 큼 나쁘지 않습니다. 사용자는 "서비스를 사용할 수 없습니다." 웹 서버가 여전히 온라인 상태이고 요청을 처리하는 중 오류가 발생했습니다. AppPool이 다시 시작될 때까지 기다려야하기 때문에이 시점에 액세스하는 사용자의 응답 시간이 매우 길다는 것을 의미합니다. 물론 공개 웹 사이트가 있고 방문자를 돌보는 경우 문제가 될 수 있습니다.

AppPool 리사이클의 다른 부작용은 iisreset과 동일합니다. 실수로 InProc 세션 캐시를 플러시하고 Application_Start 이벤트를 실행합니다.

비록 상대적으로 무해하다고해도, 나는 그것을 다운 타임으로 간주 할 것입니다.