NTFS 정션을 웹 루트로 사용하는 IIS 7 사이트의 단점은 무엇입니까?


13

가능한 한 사이트 장애가 적은 ASP.NET 코드를 배포하는 방법을 고안하려고합니다. 한 가지 생각은 NTFS 정션 c:\www\example.com에서 서비스를 제공하도록 사이트를 설정하는 것이 었습니다 .

c:\www\example.com -> c:\www\example.com_r1234

그런 다음 새 코드가 배포되면 코드가 복사되고 c:\www\site.com_r1235정션의 대상이 변경됩니다.

c:\www\example.com -> c:\www\example.com_r1235

그래서 제 질문은 이것이 IIS의 현재 요청에 어떤 영향을 미칠 수 있습니까? IIS의 반응 관점에서 변경에 대한 다른 단점은 무엇입니까 (있는 경우)? 이것이 내가 원하는대로 사이트의 최종 사용자에게 완벽할까요?

(명령 줄을 통해 사이트의 웹 루트를 변경하는 것을 고려했지만 불필요한 응용 프로그램 도메인이나 응용 프로그램 풀 이탈로 인해 IIS를 재구성하는 아이디어가 마음에 들지 않지만 많이 알지 못합니다. 로드 상태에서 사이트의 구성된 실제 경로가 변경되면 어떻게됩니까?)

분명히, 여기서 유일한 관심사는 최종 사용자의 경험입니다. 나의 목표는 그들에게 불편 함을 피하는 것이지 나에게는 편의가 아닙니다.


1
웹 루트를 재설정하십시오. 모든 재활용 ( 생각 하지 않을 것)과 앱 풀 다시 시작은 a) "필수"가 아니며 b) 작업자 프로세스가 콘텐츠 및 캐시 상태에 대한 현실적인 아이디어를 유지하도록 도와줍니다. 그것은 영리한 해결책이지만, 영리한 것은 거의 안정적이지 않습니다. 대다수의 사람들이 무엇을하는지 알아 내십시오.
TristanK

좋은 질문입니다. 오랫동안 그것에 대한 답을 찾고있었습니다. 내가 본 것은로드 밸런서 (내가 가지고 있지 않음) 아래의 롤링 배포 또는 웹 루트에 파일의 간단한 복사 / svn (좋지 않은)입니다.
jayrdub

1
먼저 웹 루트의 대상을 변경해보십시오.
TristanK

답변:


3

가능한 한 사이트 장애가 적은 ASP.NET 코드를 배포하는 방법.

이제는 모든 배포에 관련된 추가 작업이나 스크립트가 많이 있으므로이 목표와 제안 된 솔루션이 일치하지 않는 것 같습니다.

내가 본 것 중 하나는 프로덕션 서버에 svn 클라이언트를 설치하는 것이고, 프로덕션 사이트는 소스 제어 트리에서 특정 위치 / 분기의 체크 아웃 된 사본입니다. 이 방법으로 최소한 새로운 배포를 위해 변경된 파일 만 업데이트하면됩니다.


이 네트워크 작동으로 인해 사이트의 아티팩트가 너무 모호한 상태가됩니다. 그것이 내가 피하려고하는 정확한 상황입니다. 웹 루트 아래의 어셈블리가 다른 버전 인 시간을 없애려고합니다.
jayrdub

1
"추가 작업 및 스크립트"는 문제가되지 않습니다. 우리는 완전히 자동화되어 있습니다
jayrdub

나는 공평하고 교란과 필요한 업무가 실제로 같은 것이 아니라고 생각합니다
Mark Henderson

내 사이트의 최종 사용자의 방해는 내가 말하는 것입니다
jayrdub

2

웹 루트 뒤에라는 폴더를 만들었습니다. _images

C:\DEV\_IMAGES

그런 다음 많은 gif 파일을 복사했습니다. 그런 다음 루트를 사용하여 루트에 NTFS 심볼릭 링크를 만들었습니다.

C:\DEV\PROJECT\ROOT mklink /D webimages ..\_images

Visual Studio 2010에서 "모든 파일 표시"를 표시 한 다음 새로 고침 ... 새 "웹 이미지"를 프로젝트에 포함시킵니다. 이제 가리킬 수 있습니다 ...

img src='webimages/icon.gif'

앱을 실행하면 로컬 컴퓨터에서도 잘 작동합니다.

인프라가이를 처리 할 때까지 실제 서버 (IIS 7)에서 작동하는지 알 수 없습니다. 왜 이것이 프로덕션에서 작동하지 않는지에 대한 문제를 알고 있습니까?

권리가있는 한 웹 애플리케이션간에 폴더 공유 (모든 유형의)를 단순화하는 가장 좋은 방법이라고 생각합니다.

나는 아직 TFS로 이것을 표현하려고 시도하지 않았으므로 누군가 이것에 대한 의견이 있으면 알려주십시오!


0

IIS가 다른 프로그램에 의해 web.config가 변경되었다고 생각할 수 있기 때문에 이것은 작동하지 않습니다. IIS는 아마도 System.Configuration.ConfigurationErrorsException 예외를 던질 것입니다. 사이트의 홈 디렉토리를 변경하기 위해 일종의 스크립트를 작성하는 것이 좋습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.