2010-02-17 3 views
0

보고 서비스를 위해 일부 웹보고를 사용하고 있습니다. 처음로드 할 때 그들은 정말로 느립니다. 로컬에서 파일을 참조 할 수있는 방법이 있습니까?webreference : 어떻게 속도를 높입니까?

+0

중복 : http://stackoverflow.com/questions/784918/asmx-web-service-slow-first-request –

+0

그래, 그 문제는 같은 문제를 다룹니다. – Praesagus

+0

또한 자신의 질문의 중복 : http://stackoverflow.com/questions/2276183/sql-server-reporting-services-web-references-vs-assembly-references-poor-perfor –

답변

0

두 가지가이 문제를 해결하기 위해 수행해야 :

  1. xml serialization
  2. Change the Reporting service recycle time
  3. 변경 IIS에서 응용 프로그램 풀 재생 시간 (나를 위해 첫 번째 보고서 시작에 가치가 약 20 초) (

xml 직렬화에 대한 보조적인 설명으로 위의 설정이 수행하는 경우가 있습니다 실제로 어셈블리에 아무 것도 추가하지 않습니다. 프로젝트 디렉토리에서 명령 줄을 열고 웹 프록시 클래스를 추가하고 wsdl <web service name> /out<proxy class name>과 같이 입력하십시오. wsdl http://myworkstn:8080/ReportServer_SQLEXPRESS/ReportExecution2005.asmx /out: ReportExecutionProxy.cs.

그런 다음 포스트 빌드 이벤트 추가 (| 프로젝트에있는 걸 클릭 | 솔루션 탐색기를 속성 | 빌드 이벤트 (탭) | 포스트 - 빌드 이벤트 명령 줄 (섹션))에 /proxytypes 스위치는 프록시 클래스를 추가 "$(FrameworkSDKDir)Bin\sgen.exe" /force /assembly:"$(TargetPath)" /proxytypes /parsableerrors

희망이 모든 시간을 찾는데 걸리는 시간을 절약 해줍니다. :)

0

이러한 참조가 자주 발생하지 않는다면 초기 히트를 위해 서버에서 컴파일하는 것일 수 있습니다. 짧은 시간 후에 IIS의 설정을 변경하여 응용 프로그램을 재활용 할 수 있어야합니다. 당신은 또한 어떤 종류의 "keep-alive"서비스를 설정할 수 있습니다.

+0

http : //stackoverflow.com/questions/784918/asmx-web-service-slow-first-request는 문제를 해결합니다. – Praesagus

관련 문제