Đây là câu hỏi của anh chị em với số this programmers question.Có bất kỳ mối nguy hiểm không rõ ràng trong việc sử dụng các chủ đề trong ASP.NET không?
Tóm lại, chúng tôi đang xem xét thúc đẩy một số tác phẩm được yêu cầu của người dùng vào nền "đúng cách". Câu hỏi được liên kết đã cho tôi rất nhiều ý tưởng chúng ta nên đi theo con đường dịch vụ, nhưng không thực sự đưa ra bất kỳ lý lẽ thuyết phục nào về lý do tại sao, chính xác, chúng ta nên làm vậy.
tôi sẽ thừa nhận rằng, với tôi, khả năng làm việc tương đương với đạo đức của
WorkQueue.Push(delegate(object context) { ... });
thực sự hấp dẫn, vì vậy nếu nó chỉ là một chút khó khăn (chứ không phải vốn không khả thi) Tôi có khuynh hướng đi với phương pháp tiếp cận chuỗi nền.
Vì vậy, những vấn đề với chủ đề nền Tôi nhận thức được (trong bối cảnh của một AppPool):
- Họ có thể chết bất cứ lúc nào do sự AppPool được tái chế
- Giải pháp: theo dõi khi một nhiệm vụ đang được thực hiện, vì vậy nó có thể được chạy lại * a thread mới nên cần
- Các ThreadPool được sử dụng để đáp ứng các truy vấn HTTP đến, vì vậy sử dụng nó có thể chết đói IIS
- Giải pháp: xây dựng hồ bơi chủ đề của riêng chúng tôi, giới hạn số lượng chủ đề.
Câu hỏi của tôi là, những gì tôi thiếu, nếu bất cứ điều gì? Điều gì khác có thể đi sai với chủ đề nền trong ASP.NET?
* Tác vụ trong câu hỏi đã an toàn để chạy lại, vì vậy đây không phải là vấn đề.
ǂ Giả sử chúng tôi không làm bất cứ điều gì thực sự câm, như ném ngoại lệ trong chủ đề nền.
không phải là đa số luồng 'nguy hiểm' không hiển nhiên ?? –
@Mitch - Tôi đang tìm kiếm những điểm khác biệt với ASP.NET. Những nguy hiểm cho người đi bộ có thể được bỏ qua cho bây giờ, :) –