2009-04-15 29 views
5

Chúng tôi đang gặp phải thời gian khởi động chậm trên yêu cầu báo cáo đầu tiên trong ngày hoặc khi không có yêu cầu báo cáo nào trong một khoảng thời gian không xác định. Trong các bản cài đặt SQL Reporting Server 2005, chúng tôi sẽ thiết lập App Pool để tránh tái chế các ứng dụng Reporting Services.Khởi động chậm dịch vụ báo cáo SQL 2008 ở chế độ gốc

Tuy nhiên, khách hàng của tôi đã cài đặt SQL Reporting Server 2008 trên Windows Server 2008 ở chế độ Gốc. Không có cài đặt IIS mà tôi có thể định vị. Tôi đã kiểm tra thông qua các thiết lập cấu hình dịch vụ báo cáo SQL, các tệp trợ giúp và các diễn đàn và không tìm ra giải pháp cho vấn đề này trên bản cài đặt gốc.

Làm cách nào để kiểm soát việc tái chế ứng dụng Dịch vụ báo cáo khi được cài đặt ở chế độ Gốc?

Trả lời

13

Tôi không tìm thấy tham số được tham chiếu trong tcc'sresponse. Tuy nhiên, phản ứng của anh ta đã dẫn tôi đến sự tồn tại của tập tin cấu hình; Tôi đã tìm thấy một trang mà có chi tiết về nội dung:

MSDN: How to: Modify a Reporting Services Configuration File

Trong đó tôi tìm thấy thông số RecycleTime. Nó mặc định là 720 mà cảm thấy như 20 phút hoặc lâu hơn, nó đã hết thời gian. Tôi đặt nó thành 28800.

Tôi đã khởi động lại dịch vụ Dịch vụ báo cáo để có biện pháp tốt và truy cập trang web. Phải mất một hoặc hai phút bình thường để xuất hiện và trong thời gian đó máy chủ đang làm việc chăm chỉ. Bây giờ nó rất vui; Tôi sẽ kiểm tra trong suốt cả ngày để xem liệu điều này có giúp cho Dịch vụ Báo cáo tái chế quy trình và xây dựng lại sau mỗi 20 phút và báo cáo lại cho trang web này hay không.

+0

Điều này dường như đã giải quyết được sự cố của tôi. – jlo

+1

Thông số này tính bằng phút. 28800 = 480 giờ! http://msdn.microsoft.com/en-us/library/ms157273.aspx –

+0

Cảm ơn bạn rất nhiều. Điều này cũng giúp (tôi cần cả hai) http://stackoverflow.com/questions/784918/asmx-web-service-slow-first-request/784947#784947 – Praesagus

1

Tôi tin rằng giải pháp là thêm khóa ProcessTimeout vào tệp rsreportserver.config. Có khóa này trong tập tin này từ cài đặt mặc định nhưng nó được nhận xét. Tôi không chắc liệu đây có phải là vài phút hay không, nhưng tôi đã sửa đổi nó thành 28800 và quá trình này vẫn đang chạy đầu tiên sáng nay sau khi không hoạt động trong hơn 12 giờ. Báo cáo đầu tiên được tải sau vài giây.

Các tập tin nằm trong ~/file chương trình/microsoft dịch vụ SQL Server/msrs10.mssqlserver/báo cáo/ReportServer

Tôi cũng sửa đổi 7200 trong tập tin này.

0

SQL Server 2008 không sử dụng IIS, đó là lý do tại sao tham số RecycleTime được chuyển sang tệp cấu hình RS. Điều này cũng có nghĩa là bạn có thể cài đặt máy chủ báo cáo trên máy chủ cơ sở dữ liệu của mình để có hiệu suất tốt hơn, mà không cần phải cài đặt IIS.

Thời gian tái chế mặc định là 720 (12 giờ) sẽ hợp lý đối với máy chủ báo cáo chỉ hoạt động trong giờ làm việc thông thường. Tuy nhiên, tôi có cùng một vấn đề, mặc dù tôi lên lịch đăng ký báo cáo để chạy lúc 7:30 sáng mỗi ngày trong tuần để khiến máy chủ báo cáo khởi chạy trong ngày.

Tôi tự hỏi bây giờ nếu tham số RecycleTime thực sự được chỉ định trong vài phút hoặc nếu đây có thể là lỗi tài liệu. Tôi sẽ thử một giá trị lớn hơn.

0

Tôi đang chạy SQL Server 2008 R2 và có hai cài đặt (đã được nhận dạng đầu tiên) trong số rsreportserver.config mà tôi đã bỏ ghi chú và định cấu hình. giá trị của tôi được trình bày dưới đây:

<Add Key="ProcessTimeout" Value="4320" /><!-- seconds --> 
<Add Key="ProcessTimeoutGcExtension" Value="30" /><!-- seconds --> 

Tại thời điểm viết bài này, các yếu tố cấu hình are not documented trong tài liệu MSDN cho rsreportserver.cấu hình tập tin cho SQL Server 2008 R2, tuy nhiên có một KB article mô tả ngắn gọn chúng dưới biết thêm thông tin:

Có hai thiết lập cấu hình mà xác định bao lâu chờ đợi Process Monitor cho hoạt động dịch vụ trước khi dừng dịch vụ. Các thiết lập này được định nghĩa như sau:

  1. ProcessTimeout
    thiết lập này áp dụng cho bất kỳ hoạt động mà Reporting Services là biểu diễn.
  2. ProcessTimeoutGcExtension
    Thiết lập này chỉ áp dụng nếu thu gom rác thải đang diễn ra, và giá trị ProcessTimeout là đạt được.

Sử dụng các thiết lập ProcessTimeout giữ dụ SSRS tôi tỉnh táo, và thiết lập các thiết lập RecycleTime đến một giá trị phù hợp lớn (trong trường hợp của tôi 30 ngày, hoặc 43.200 giây) giúp ngăn chặn việc tái chế bắt buộc được phát sinh khi điều đó khoảng thời gian trôi qua.

0

Bằng cách đặt RecycleTime thành 28800, bạn chỉ tăng thời gian giữa các lần khởi động chậm. Nó vẫn sẽ mất thời gian cho báo cáo đầu tiên chạy sau 480 giờ. Bạn có thể đặt RecyleTime thành 0 để ngừng tái chế nếu điều này có ích.

Nếu đây không phải là một lựa chọn bạn có thể giữ cho nó sống bằng một số phương pháp như:
1.) Lập kế hoạch báo cáo giả trong trang web SSRS Report Manager (phương pháp ưa thích của tôi)
2.) Scheduled Script

Tôi nhận thấy đây là một câu hỏi cũ nhưng nó không được tài liệu tốt, hy vọng điều này sẽ giúp ai đó ở đó.

Các vấn đề liên quan