2011-11-10 6 views
9

Cách hiệu quả để xử lý các chính sách điều chỉnh EWS là gì?Xử lý các chính sách điều tiết EWS

Tôi đang cố gắng đọc mọi email trong hộp thư của mình cũng như tải xuống tất cả các tệp đính kèm. Vấn đề tôi gặp phải là Exchange sẽ thường trả về một ngoại lệ nói rằng The server cannot service this request right now. Try again later.. Có vẻ khá tự giải thích, tôi phải đạt đến giới hạn của tôi. Tìm kiếm xung quanh tôi có thể thấy rằng lỗi này rất có thể gây ra bởi việc thoát ra bao nhiêu thời gian tôi chi tiêu mỗi phút làm việc với CAS. Chính sách điều chỉnh có vẻ là EWSPercentTimeInCAS.

Vì tôi chỉ có thể nhận được 1.000 email cho mỗi truy vấn và tôi cần truy vấn tất cả 57.000 ~ email. Làm thế nào tôi có thể thực hiện công việc này?

Lưu ý rằng tôi không cố gắng phá vỡ chính sách điều chỉnh. Ý tưởng duy nhất nảy ra trong đầu là phải đưa ra tuyên bố Thread.Sleep(30000) mỗi khi tôi nhận được 1.000 email (giới hạn kết quả tìm kiếm của tôi). Tuy nhiên, lý tưởng không nên làm việc vì việc lấy 1.000 mục mất ít thời gian hơn nhiều.

Sự cố này dường như xuất phát từ việc tải xuống tệp đính kèm. Hộp thư có tổng cộng 7.000 ~ tệp đính kèm.

+0

Bạn có thực hiện thêm bất kỳ tiến triển nào về điều này không? – Midas

Trả lời

6

Cách tiếp cận của bạn là chính xác. Bạn cần phải làm chậm số lượng yêu cầu của mình mỗi phút. Xem http://blogs.msdn.com/b/mstehle/archive/2010/11/09/ews-best-practices-understand-throttling-policies.aspx để biết thêm thông tin về chủ đề này.

+1

Cảm ơn bạn đã trả lời. Vấn đề của tôi là tôi đã tải xuống tệp đính kèm trong nền. Với 27.000 ~ chủ đề trong nền bạn có thể tưởng tượng nó sẽ không mất nhiều thời gian để đạt giới hạn ga của tôi. :) – gcso

+2

Có cách nào dễ dàng để đọc cấu hình chính sách điều chỉnh cho EWS không? Không phụ thuộc vào PowerShell hoặc Active Directory? Bởi vì chúng không bao giờ truy cập được bên ngoài mạng. –

+0

@IvanG. Bất kỳ may mắn?? – Midas