2008-09-16 4 views
1

우리의 프로덕션 웹 서버는 각각 별도의 웹 사이트 (ASP.NET 웹 응용 프로그램)를위한 자체 캐시를 유지 관리합니다. 현재 캐시를 지우려면 서버에 로그인하고 web.config 파일을 "만지십시오".웹 팜의 서버 캐시를 원격으로 재설정하는 가장 좋은 방법은 무엇입니까?

에 원격으로 안전하게/안전한 방법의 예가 있습니까? 특정 웹 응용 프로그램의 캐시를 재설정 하시겠습니까? 이상적으로는 "모든 서버에서 실행중인 앱 X의 캐시를 지우거나"Y 서버에서 실행중인 앱 X의 캐시를 지우는 것 "이라고 말할 수 있습니다.

편집/부연 설명 :

  • 아마 응용 프로그램 자체를 통해이 일을하는 것은 특정 페이지 또는 처리기 옵션 (응용 프로그램에 로그인의 즉 어떤 종류의 서핑은 정말 아니라는 것을 명확히해야한다 그 캐시를 지울 것입니다). 이와 같이하려면 로깅 및 통계 추적 코드를 비활성화/우회하거나 통계를 엉망으로 만들 필요가 있습니다.

  • 예, 캐시는 정기적으로 만료됩니다. 내가 뭘하고 싶은데 뭔가를 설치하는 것입니다, 그래서 우리는 데이터베이스 (SQL 2000을 사용하고 있습니다)에서 뭔가를 바꾼 후에 특정 캐시를 만료시킬 수 있습니다. 이제는 서버 자체에 로그인해야만이 작업을 수행 할 수 있습니다.

답변

1

유용 볼 터치 유틸리티에 관한 DevX 기사를 발견했다.

데이터베이스의 테이블 (레코드 추가 및 터치 유틸리티에서 찾아서 적절한 web.config 파일 업데이트) 또는 웹 서비스 (전화 및 터치 유틸리티 만들기 적절한 web.config 파일을 업데이트하기 위해 호출 됨)

0

"우아함"이 아니지만 배치 스크립트를 실행하는 예약 된 작업을 설정할 수 있습니다. 스크립트는 본질적으로 web.config (또는 재 컴파일을 유발하는 다른 파일)를 "만지기"만 할 것입니다.

그렇지 않으면 N 분 후에 응용 프로그램 캐시가 만료되지 않도록 설정되어 있습니까?

1

각 응용 프로그램에 대해 cache/dump.aspx 스크립트를 작성하여 캐시/응용 프로그램 데이터를 삭제할 수 있습니다. 모든 응용 프로그램에 복사하고 허브 스크립트를 작성하여 호출을 관리하십시오.

보안을 위해 모든 종류의 인증 조회 또는 IP 검사를 추가 할 수 있습니다. 여기

방법

내가 할 실제 앱 덤핑 :

Context.Application.Lock() 
Context.Session.Abandon() 
Context.Application.RemoveAll() 
Context.Application.UnLock() 
관련 문제