Tôi có dịch vụ WCF được triển khai trong ứng dụng bảng điều khiển có BasicHTTPBinding và SSL được bật. Các thuộc tính sau được thiết lập cũng như:Điều chỉnh dịch vụ WCF
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
Tôi cũng đã thiết lập các hành vi throttling để
<serviceThrottling maxConcurrentCalls="2147483647" maxConcurrentSessions="2147483647"
maxConcurrentInstances="2147483647" />
Mặt khác tôi đã tạo ra một khách hàng thử nghiệm (đối với kiểm tra tải) bắt đầu nhiều khách hàng cùng một lúc (nhiều chủ đề) và thực hiện các giao dịch trên máy chủ. Tất cả mọi thứ có vẻ tốt nhưng trên máy chủ sử dụng CPU không tăng vì vậy tôi thêm một số đăng nhập để xem số lượng các cuộc gọi đồng thời đến máy chủ và thấy rằng nó không bao giờ đi qua 6.
Tôi đã xem xét mã đăng nhập hiệu suất hơn hơn hai lần và có vẻ ổn với tôi.
Vì vậy, tôi muốn hỏi đâu là vấn đề trong tình huống này? Tôi chưa chỉ định bất kỳ loại ContextMode hoặc ConcurrencyMode nào.
Sau bài đăng này, tôi nhận thấy rằng bất cứ khi nào tôi bắt đầu một Intance of Test Client, Counter Server đồng thời của tôi sẽ tăng lên 2 như nếu tôi chỉ chạy 1 instance, các cuộc gọi Rcvd đồng thời tối đa sẽ là 2 và nếu có hai trường hợp giống nhau giá trị đi đến 4 và cứ tiếp tục như vậy. Có giới hạn số cuộc gọi WCF từ một lần xử lý không?
******** Ngày 17 tháng ********
Hôm nay tôi chạy một thử nghiệm với một khách hàng thử nghiệm (với 50 người dùng đồng thời) trên cùng một máy mà trên đó máy chủ đang chạy. Lần này tôi nhận được kết quả chính xác những gì tôi muốn nó hiển thị (tức là các cuộc gọi đồng thời tối đa Rcvd bởi Server = 50).
Nhưng tôi cũng cần làm như vậy trên các máy khác. Ai có thể giúp tôi về điều này?
Từ @JuliaS: Trường hợp nào dòng này đi đâu? Đây có phải là cài đặt dịch vụ khách hàng hoặc WCF không? –
xin lỗi vì trả lời trễ: điều này xảy ra với bất kỳ ứng dụng .net nào làm cho nhiều kết nối ra ngoài đồng thời tới bất kỳ máy chủ nào. –