2015-05-28 27 views
7

Chúng tôi có một ứng dụng chạy trên nền tảng đám mây Microsoft Azure. Giao tiếp giữa một số thành phần được thực hiện bằng Service Bus. Tất cả mọi thứ đã làm việc tốt, cho đến gần đây chúng tôi bắt đầu để có được những loại vật liệu làm ngoại lệ timeout:Ngoại lệ hết thời gian chờ dịch vụ Microsoft Azure

Khi gọi QueueClient x.Send(...)

Exception rethrown at [0]: at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result) at Microsoft.ServiceBus.Messaging.Sbmp.DuplexRequestBindingElement.DuplexRequestSessionChannel.DuplexCorrelationAsyncResult.End(IAsyncResult result) at Microsoft.ServiceBus.Messaging.Channels.ReconnectBindingElement.ReconnectChannelFactory `1.RequestSessionChannel.RequestAsyncResult.b__4(RequestAsyncResult thisPtr, IAsyncResult r) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Khi gọi NamespaceManager x.GetQueue(...)

PROGRESS queue processing failed. System.TimeoutException: The request has timed out after 60000 milliseconds. The successful completion of the request cannot be determined. Additional queries should be made to determine whether or not the operation has succeeded. TrackingId:bdffb6bd-5367-4573-aaa3-8ea9a03f5a2b,TimeStamp:5/28/2015 8:39:46 AM ---> System.Net.WebException: The request was aborted: The request was canceled. at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
at Microsoft.ServiceBus.Messaging.ServiceBusResourceOperations.GetAsyncResult`1.b__49(GetAsyncResult`1 thisPtr, IAsyncResult r) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result)

Khi gọi NamespaceManager x.SubscriptionExists(...)

Exception doing periodic work: System.TimeoutException: The request has timed out after 00:10:00 milliseconds. The successful completion of the request cannot be determined. Additional queries should be made to determine whether or not the operation has succeeded. Server stack trace: Exception rethrown at [0]: at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result) at Microsoft.ServiceBus.NamespaceManager.OnEndSubscriptionExists(IAsyncResult result) at Microsoft.ServiceBus.NamespaceManager.SubscriptionExists(String topicPath, String name) ...

Khi gọi QueueClient x.Receive(...)

PROGRESS queue processing failed. Microsoft.ServiceBus.Messaging.MessagingCommunicationException: Error during communication with Service Bus. Check the connection information, then retry. ---> System.ServiceModel.CommunicationObjectFaultedException: Internal Server Error: The server did not provide a meaningful reply; this might be caused by a premature session shutdown. TrackingId:04ba0220-0350-4806-9c65-c2bba9671054, Timestamp:28.05.2015 13:00:55 Server stack trace: Exception rethrown at [0]: at Microsoft.ServiceBus.Common.ExceptionDispatcher.Throw(Exception exception) at Microsoft.ServiceBus.Common.AsyncResult.End[TAsyncResult](IAsyncResult result) at Microsoft.ServiceBus.Messaging.Sbmp.DuplexRequestBindingElement.DuplexRequestSessionChannel.DuplexCorrelationAsyncResult.End(IAsyncResult result) at Microsoft.ServiceBus.Messaging.Sbmp.DuplexRequestBindingElement.DuplexRequestSessionChannel.EndRequest(IAsyncResult result) at Microsoft.ServiceBus.Messaging.Channels.ReconnectBindingElement.ReconnectChannelFactory`1.RequestSessionChannel.RequestAsyncResult.b__4(RequestAsyncResult thisPtr, IAsyncResult r) at Microsoft.ServiceBus.Messaging.IteratorAsyncResult`1.StepCallback(IAsyncResult result) ….

Ngoại lệ rõ ràng liên quan đến ServiceBus và chúng không xác định. Các chức năng ném chúng, ví dụ: Send, GetQueue, SubscriptionExists, được gọi không quá 100-120 lần mỗi phút. Chúng tôi đã thay đổi không có gì trong mã và tăng giá trị thời gian chờ (ngay cả với giá trị cao ridiculously, như 10min) đã không giúp đỡ. Ngoài ra, chúng tôi không tin rằng đó là một số vấn đề liên quan đến mạng (về phía chúng tôi) vì cùng một lỗi xảy ra khi ứng dụng được chạy từ những nơi khác nhau.

Có ai khác gặp phải các loại ngoại lệ gần đây không? Có vấn đề gì ở phía Microsoft hay chúng ta đang thiếu cái gì đó?

+0

Nếu bạn gặp vấn đề tương tự tiumeout cũng thấy http://stackoverflow.com/questions/30224200/azure-service-bus-topic-timeout-exception/38847121# 38847121 –

Trả lời

0

Một vài tuần trước, chúng tôi đã gặp phải các sự cố thời gian đột ngột và không giải thích được bằng ứng dụng Dịch vụ xe buýt đã được sản xuất trong nhiều tháng. Chúng tôi tiếp tục làm việc nhưng mỗi vài cuộc gọi sẽ mất 10 + giây khi họ thường là 100-200 millisconds. Điều này diễn ra trong một vài tuần và tôi đã dành phần lớn thời gian đó để tìm ra những gì đang diễn ra và không bao giờ xảy ra khi vấn đề đột nhiên biến mất.

Chúng tôi đã tìm hiểu rằng các vùng tên dịch vụ Bus mới mà chúng tôi đã tạo trong cùng một trung tâm dữ liệu khác để thử nghiệm trong khi sự cố xảy ra không hiển thị cùng một vấn đề. Nhóm Service Bus không cung cấp trợ giúp và chỉ nói thời gian phản hồi không được bảo đảm chỉ SLA.

1

Tôi đã gặp sự cố tương tự khi mã đang chạy của tôi bắt đầu tạo ra ngoại lệ Thời gian chờ. Khi nghiên cứu phát hiện ra rằng tường lửa đã chặn cổng được sử dụng để liên lạc. Tuy nhiên, cổng 80 và 443 vẫn mở. Vì vậy, thêm dòng mã sau đây làm việc cho tôi:

ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Https; 
Các vấn đề liên quan