Environment: Windows Server 2008 Enterprise, IIS 7.0, ASP.NET 2.0 (CLR), .NET 4.0
Làm thế nào để tăng đề thread-pool trên IIS 7,0
Tôi có một ứng dụng ASP.NET
không có trang và không có phiên (HttpHandler
). Nó là một máy chủ streaming. Tôi sử dụng hai chủ đề để xử lý mỗi yêu cầu vì vậy nếu có 100 khách hàng được kết nối, thì 200 chủ đề được sử dụng. Đây là một máy chủ chuyên dụng và không có ứng dụng nào khác trên máy chủ.
Vấn đề là sau khi 200 ứng dụng được kết nối (dưới ứng suất thử nghiệm) từ chối khách hàng mới, nhưng nếu tôi tăng các chuỗi công nhân application pool
(tạo vườn trên web) thì tôi có thể có 200 khách hàng mới hạnh phúc theo quy trình w3wp
.
Tôi cảm thấy giới hạn của hồ bơi. NET đạt đến điểm đó và cần tăng nó.
Cảm ơn
Có vẻ như bạn đang sử dụng threadpool của bạn cho các nhiệm vụ lâu dài và chạy vào một vấn đề mở rộng quy mô. Các luồng của bạn có hoạt động ở tốc độ tối đa hay chúng đang chặn? Bạn đã nghiên cứu triển khai không đồng bộ thay thế? – sisve
Bạn đúng, chúng là những chủ đề dài hạn theo thiết kế. Như tôi đã nói đây là doanh nghiệp duy nhất của ứng dụng/máy chủ. Chủ đề được sử dụng đầy đủ và không bao giờ đi ngủ hoặc nhàn rỗi. Đây không phải là một ứng dụng 'ASP.NET' bình thường trong đó các chủ đề Async làm điều gì đó trong nền. Vì vậy, không có gì có thể làm tốt hơn cho thiết kế vì đây là bản chất của ứng dụng. – Xaqron