Basically I've been hosting a website on Windows Azure for a couple of months now.
Previously everything has been running smoothly. However all the sudden my site is loading INCREDIBLY slow (we're talking 20s load time). I have no idea what happend - I was running shared mode and before this point everything was running fine.
Below are my stats for the last 7 days (I don't know what else to upload):
I tried getting support but apparently my plan does not provide technical support.
I decided to upgrade to standard hosting but it's been 30 minutes now and my site is still running just as slow.
Also when I debug it locally everything runs just fine. Furthermore my I'm not connecting to any databases so what could the issue be????
Sometimes the site doesn't even load at all and displays errors such as:
500 - Internal server error
502 - Web server received an invalid response while acting as a gateway or proxy server.
What could be the problem - what am I supposed to do? Apparently Microsoft provide absolutely NO support so I guess I'm simply forced to switch to another hosting provider if I cannot figure out the issue myself?
have you found something that has increased load(on lines of user hits,transactions) on your sites? since you are running shared mode, you are sharing resources with multiple sites on the same server which could be the reason.
It might be an indication for you to go to dedicated mode.
Related
Good day.
Background: ASP.NET MVC 3 / SignalR.
I'm developing typical chat component which will be used in a big portal. I wrote small emulator which opens new window with chat component and new SignalR connection in it.
The problem:
Everything works fine, but: Suddenly i noticed that if i open more than X windows/tabs with same component in one browser - server stops to receive any responses from any clients connected with it.
The X is:
5 for IE and Chrome
14 for FF.
I suppose it's a browser issue, because the value differs from one to another. Additionally i noticed that requests can stay pending for minutes! And there is no timeout..
Maybe someone faced with something like this, or know what can cause this strange behavior?
Thanx in advance, Jan.
I'm going to assume you're using IIS 7/7.5 on windows 7. If you are indeed using Windows7 then you need to use IIS Express since it only supports 10 concurrent connections (Client OS limit). Alternatively you can use Windows Server to get the full benefits of IIS.
This is the first post in three days of googling that came close to my experience. I am using the .NET client and have tried isolating the issue by creating an app with just the problem areas. The difference in our situation is this: I don't seem to have some connection limit on the client. In fact, I have no issues until I deploy my .Net hub to the windows server 2008 hyper vps. IIS express runs everything as smooth as butter. I've checked to make sure the asynchronous services and features are running and I've followed the performance tuning articles that david mentions in the documentation, adjusting the setting for thread queue maximums and the like. Note that the minute-two minute delays you describe are identical to mine. I updated to the latest version of SignalR (.4) from nuget and it broke my solution for some reason.
Can you tell me what version you're on? I suspect it could have something to do with security on the physical host where my vps is running. I am going to try it on a different virtualization platform to rule out hyper v issues.
Please, see my answer here: Is there a way to get number of connections in Signalr hub group?
The idea is to overwrite connectionid.
I'm developing an asp.net web site to work on mobile devices. Is going ok and works fine with android and iphone. I've no got around to testing it with blackberry in my balcberry curve. When i first tried everything looked good b ut then i noticed that some od the autopost back on dropdowns etc did not work. Some research time later i turn out out that by default that blackberries do not support this and that I need a Blackberr.browser file to allow that type of functionality to work. I following this link...
http://www.codeproject.com/KB/aspnet/BlackberryASPNET.aspx
After doing this my blakberry will not load the site at all, i just get connection timeouts. So i tried removing the blackberry.browser file, read loading the assembley in an attempt to get back to where is was, but still the site will not connect. I've refreshed iis, recycled app pools and even rebooted. I have a QA site on another box that the blackberry will connect to, but my development machine it does not like anymore:-(.
Any one got any ideas in what is going on?
Thanks for any help.
Richard
I have also suffered with the pain of developing (actually optimizing) websites for BlackBerry and Symbian, and I understand your suffering.
As you're using BlackBerry Curve, I suppose you're using a MDS server simulator on your development machine to let the BlackBerry Emulator connect to Internet.
Although I am not sure if you're even using a simulator.
I also have come across some simulators which just won't connect to the Internet no matter how hard you try with MDS server and all.
I hope you're not stuck with any issue related to the above said things mate.
Are you trying to connect your localhost with your BB?
I have a new IIS7 box running Windows Server 2008 Web Edition (x64), and I have set up an existing classic ASP site there. The site works fine and super speedy for the most part, but will randomly hang (about 1 out of 20 or so requests). By hanging, I mean I will click a page from the browser, and the browser (Crome on Mac) never responds -- it just continually loads until I finally get the following error after about 3 or so minutes:
Error 7 (net::ERR_TIMED_OUT): The operation timed out.
I'm pretty sure this is a Chrome-specific error, so I'm not too hung up on the actual error, but the cause of the time out. The site connects to a SQL 2005 server on the same network, but I'm pretty sure this isn't a SQL timeout, as that would happen within 30 seconds, and give me a specific error about SQL. I think this is an issue w/ my site, or the server.
Note that often after seeing this, I can simply stop the request and reload the page, and it will load just fine, super speedy again.
I'm not even sure where to begin troubleshooting this. I have to figure this out, otherwise this will mean a new server purchase down the drain.
Thanks in advance for any suggestions.
I've noticed a few more things about this problem. It'll happen more often after I've published files to the server (even static content like js or css files). It'll also happen occasionally on other sites running ASP.NET. Namely I've noticed the timeout on dotnetkicks.com which is also running IIS 7.5. Again, this only occurs in Chrome.
I've also tried uninstalling and re-installing Chrome but the problem continues. My next step is to try this from a couple different computers running Chrome outside my network.
UPDATE (April 29, 2011)
So I moved to Colorado a couple weeks ago and I haven't seen this problem occur even once since I moved. That leads me to conclude that 1.) my internet connection in Dallas was flaky and 2.) Chrome was less forgiving of a poor connection than other browsers. And of course, it basically rules out any possibility of there being a problem at the server's end.
Two Win2003 servers running ASP.NET sharing same SQL Server, one is DEV the other is LIVE. They are both clones of each other, one is the development box. The dev box is going really slow but I noticed it even happens on a 404 response even. When I browse to a fake URL with either domain to get a 404, the dev box was like 1.4 seconds and other box was like 200ms. So it wasn't recent code changes. Is there some IIS configuration or web.config setting that would cause this?
(I did a traceroute to both and it turned out equal)
It could be a lot of things:
The DEV machine is resolving or trying to resolve the clients' DNS name.
The DEV machine has to perform a DNS query for the DB machine.
The DEV machine not using connection pooling (check the connection string).
Is the KeepAlive setting the same in both machines?
Is there any AD authentication involved? Could that be slower from DEV?
What if you do the POST locally on DEV? Is it still slow?
Are you on the actual dev console?
If so, is it a Firefox or WebKit IPv6 issue? Many of us devs have IPv6 available on our own boxes, and some browsers are pretty slow with it if it's not set up completely. Try using IE and see if you get a fast response on your dev box.
When I access local apps in Chrome, it takes several seconds for the page to display. Same with Firefox until I disabled IPv6 in its config.
Since even a 404 Not Found is slow, that says it probably isn't related to your DB, unless perhaps you're doing some sort of logging or other DB access from Global.asax or an HttpModule.
Have you looked in the Windows error log to see if any errors are being reported?
If ping and tracert from your client to both servers looks OK, and if it also looks OK from the web servers to the DB, then you might look at things like:
Hardware problems (flakey network cables are a common culprit). Maybe try swapping your live and dev machines, and see if the problem stays on the same hardware. Flakey disks can also cause slowness as the controller retries.
IIS-related configuration errors. If the site works and is just slow, you might look at your back-end logging, tracing, etc, if you have any.
You might also look into upgrading to Win 2008. IIS 7 has some much-improved debug facilities, including things like Failed Request Tracing.
I've asked this on server fault already but to no avail. So I'm hoping another ASP.Net Developer would have come across my issue.
I've got a Windows VPS running II6 and I'm migrating my ASP.Net applications across to the server. When I navigate to one of those applications it takes approximately 2 minutes to do anything. I created a hello world application and uploaded that, and that to takes 2 minutes to load the first time. If I restart the app pool I get exactly the same issue.
Any application that shares an app pool with another application will work once one application has loaded successfully in that app pool.
I.e. bob.example.com and jane.example.com are in an app pool called ABC1. If I access bob it will take 2-3 minutes to load. After bob has loaded, Jane will work instantly and bob will work instantly. After 5-10 minutes of being idle, or if I restart the app pool, exactly the same process happens again. During the time when bob and jane and working fine, if dave.example.com in app pool XYZ9 is loaded, I must wait 2-3 minutes for that to load too.
Has anyone come across this issue? I am in absolute panic mode at the moment as I need to get these migrated by the end of the weekend.
Oh, and those sites work instantly on the old server. The only difference is that the old server is 32-bit and the new server is 64-bit.
You say it takes two minutes to start up. What is the system doing during that time? In particular, what is w3wp.exe doing?
I suggest you run SysInternals' Process Monitor to learn a bit about what's going on. It will take a while to come up with a useful filter, but it should be worthwhile.
In particular, the latest versions of this tool can give you information about networking calls being made by the processes you're watching, which will be good if it turns out you've got issues with certificates, proxy servers, or both.
Instead of requesting a .aspx file, what happens if you request a plain .htm file? The difference is that HTML files don't go through ASP.NET, so if you still get the slowness issue, you'll know that it is more of an IIS thing than an ASP.NET thing.
Though not an answer, it's a step towards isolating the issue.
On shared virtual hosts (VPS), I've found that the disk access can be extraordinarily slow, and vary at times of day. When the application pool spins up, the process has to load from disk and it (presumably) needs to load the .Net framework.
(I asked a similar question here.)
Really, my virtual host is shockingly slow at times so I believe that 2 minutes can be attributable to disk I/O speed. And if your virtual server has a low amount of RAM, it will be worse.
I use a server monitoring service to hit a URL every 30 minutes. This helps keep the app loaded. ASP.net 4.0 has some features which promise to help.
I disabled recycling and that fixed everything...ish. Once it's loaded once it's loaded forever. Still doesn't fix the underlying problem, but 1and1 refuse to help regarding issues with IIS.
This could just be the initial appdomain compile startup cost but magnified because you're using a VPS.
What kind of spec have you got on that?
I don't have any clue on this question.
However, I read/heard somewhere that - in such a scenario it could be possible that your request goes out on the internet to check for the domain, when it should check first in the local network (related to DNS maybe).
This is totally based on what I can recollect of a similar problem people discussing on an article/podcast.
Could be that the server is probably having problems validating the signed assemblies certificates revocation chain lists. You can disable CRL checks and see if it performs better.
Update
To disable the Certificate Revocation List (CRL) check:
Open Internet Explorer
Go to Tools —> Internet Options…
Go to the Advanced tab
Locate the Security section and uncheck the Check for publisher’s certificate revocation option.
This disables globally, for the entire server, the CRL check, and has the side effect of disabling the authenticode CRL checks (ie. the ASP app pool checks). I'm not aware of any more fine grained method. Also, I don't know if this has to be done separately for the x86 version of IE (to apply to 32 bit apps) and to the x64 version of IE (for the 64 bit apps).
Does your application share the same application pool with other web applications? In other words, are you using a third-party VPS and have no control over app pool usage? If so, then the application initialization code for the other apps could be what's causing the slow startup time.
Under what identity is the application pool running? Domain, or local?
What forms of authentication are you using? If anonymous, what account is it using (domain or local)>
If you check task manager right after iisreset and hitting the website, does it show w3svc running, or are we waiting for it to start at all?
What about a static file, e.g., .htm?
That's all I have - hope this helps.