Hello,
I deployed a web to Azure web app service a month ago. It frequently went down. I am asking how to fix this problem. Below is the detail.
the web app service is on windows server. I chose B1 as my service plan. My website is composed with a back-end api (.Net 6) and React SPA. In React, I used Axios to make HTTP request.
At the beginning, the website was fine. Myfriends and me were able to visit and interact with it. But later, we cannot visit the website. It frequently went down. In the Browser Debug mode Network tab, you could find the xhr request said" cannot load response data". But if you directly typed a api url (a "get" api in my website api) in the browser, it would give you the correct json data. Then the webiste suddenly became good. You could visit it normally. For about 30 mininutes later (the time is estimated), the webiste went down again.
The azure troubleshooting detects some errors. It said the front-end(the seven-load balancer functioning as proxy) detect some error regarding "Client Gone-The client that originated the request seems to have closed the connection before the response was received." . Furthermore, it said that Proxy exceptions detected where the client disappeared before the request could be completed. The diagnostic page also gave me a table displaying proxy exceptions that occurred while sending requests from the FrontEnd to the worker, resulting in exceptions.Here is the detail info in the table.
krpbfe: ProxyError, Site: blueprintforlife, Host: blueprintforlife.azurewebsites.net, Method: GET, Url: /api/getThumbnail, ServerRouted: 10.0.0.12, ProxyError: RequestCanceled, RequestAborted: True, RemoteAddress: 111.163.122.252, ConnectedTime: 14734ms, ProxyException: System.Threading.Tasks.TaskCanceledException: The operation was canceled.
---> System.IO.IOException: Unable to read data from the transport connection: The I/O operation has been aborted because of either a thread exit or an application request..
---> System.Net.Sockets.SocketException (995): The I/O operation has been aborted because of either a thread exit or an application request.
--- End of inner exception stack trace ---
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError error, CancellationToken cancellationToken)
at System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.System.Threading.Tasks.Sources.IValueTaskSource<System.Int32>.GetResult(Int16 token)
at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
--- End of inner exception stack trace ---
at System.Net.Http.HttpConnection.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
at System.Net.Http.HttpConnectionPool.SendWithVersionDetectionAndRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
at Microsoft.Web.Hosting.Frontend.Utilities.ProxyMessageHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
at System.Net.Http.HttpMessageInvoker.g__SendAsyncWithTelemetry