2011-01-28 3 views
0

Environement를 재설정하지 않고 파일을 사용 : 2.0 닷넷, 윈도우 서버 2005편집 IIS

나는 문제가있다 : I 트래픽을 많이 가지고 웹 사이트가, 나의 XML 파일 중 하나가 항상으로 열립니다 document (...) 함수 (xslt 템플릿 내부).

그래서 어떻게 서버를 재설정하지 않고이 xml 파일을 업데이트 할 수 있습니까? 또는 문서 (...) 함수에 캐시 전략을 적용하여 필요할 때마다 파일을로드하지 않고 파일을 변경할 때 캐시를 업데이트하는 방법은 무엇입니까?

감사

레미

+0

복사본을 만들고 복사본을 업데이트 한 다음 스크립트가 새 복사본을 가리 키도록 가리키고 사용중인 모든 것이 끝나면 원본을 제거하십시오. –

+0

파일은 항상 사용 중이며 많은 트래픽이있는 웹 사이트가 있으므로 사용하지 않는 기간을 찾을 수 없습니다. –

답변

0

가장 쉬운 방법은 응용 프로그램이 메모리에 파일의 내용을로드하고 다음 파일의 잠금을 해제해야하는 것입니다.

2 단계는 동일한 응용 프로그램을 통해 편집하므로 파일을 저장하고 캐시 된 개체를 파괴하고 최신 버전을 사용할 수 있습니다.

단지 1 단계를 구현하고 메모리 내 버전이 설정된 간격으로 만료되어 파일의 경합이 줄어들지 만 파일에서 잠금이 설정되어있는 동안 파일을 읽으려고 할 가능성이 있습니다 외부 편집 과정 및 그 반대로 - 파일을 보관하는 것보다 훨씬 작은 기회. FileInfo를 읽으려는 시도로이 파일을 읽은 후 변경되었는지 확인할 수 있습니다. FileInfo를 읽는 중 문제가 발생하면 메모리 내 버전이 손상되지 않습니다.

+0

제가 말했던 문제는 웹 사이트에서 스트림이 아닌 xpath document() 함수를 통해 파일을 열어서 여기에 어떤 전략도 적용 할 수 없다는 것입니다. 어쩌면 방법이 있을지 모르지만 나는 어느 것을 모른다. –