Tôi đã làm việc trên một bằng chứng về khái niệm sử dụng WCF và MSMQ. Tôi đã được chơi xung quanh với các thiết lập ga bằng cách sử dụng các giá trị mặc định This Article và cũng có thể thêm các thiết lập của riêng tôi vào tập tin cấu hình. Tôi có 2 CPU Core Xeon Quad chạy ứng dụng này. Không có vấn đề gì cài đặt tôi áp dụng nó luôn luôn chỉ xuất hiện để lấy 8 tin nhắn tại một thời điểm (nào phù hợp với lõi xử lý của tôi). Tôi muốn mỗi thông điệp được xử lý trong một giao dịch duy nhất để có thể là một phần của vấn đề ... không chắc chắn. Tôi jsut giả định nó sẽ xử lý nhiều thông điệp hơn đồng thời hơn nó.WCF Cài đặt ga
Dịch vụ Hành vi:
[ServiceBehavior(UseSynchronizationContext = true,
ReleaseServiceInstanceOnTransactionComplete=true,
ConcurrencyMode = ConcurrencyMode.Single,
InstanceContextMode = InstanceContextMode.PerCall)]
Endpoint Hành vi:
<endpointBehaviors>
<behavior name="endpointBehavior">
<transactedBatching maxBatchSize="1" />
</behavior>
</endpointBehaviors>
Dịch vụ My own tốc độ nhâp:
<serviceThrottling maxConcurrentCalls="128" maxConcurrentSessions="800" />
Tôi nhìn ra cái gì? Có lẽ tôi chỉ không hoàn toàn hiểu được cài đặt ga mặc định/tùy chỉnh (có khả năng).
EDIT
tôi đã sửa đổi ConcurrencyMode (Thay đổi để Nhiều) cùng với các thiết lập ReleaseServiceInstanceOnTransactionComplete. Thay đổi sang nhiều dường như không thay đổi bất cứ điều gì?
EDIT Đây có phải là cài đặt TransactionBatch không? Tôi đã đặt nó thành một ...?
Cảm ơn,
S
Đây không phải là đơn luồng? –
Xin chào @JohnBreakwell Tôi đã thay đổi chế độ đồng thời thành Nhiều và dường như đang nhận ra cùng một kết quả? – scarpacci