Running sites on "localhost" is extremely slow
Asked Answered
E

20

70

Having real trouble using my localhost to test sites. It runs extremely slowly! Sometimes it takes up to a minute to load a page. I'm using Firefox and the sites I'm testing run fine on other developers in my office's local machines / on the production server.

I've gone through the normal things :-

  1. Disabled IPv6
  2. Not running in debug mode
  3. Put the site in the highest app pool (High Isolated) on IIS 6.
  4. Taking of firewalls etc.

The problem only seems to occur when hitting pages which contain some form of .net code in the code-behind.

Appreciate that this a little bit of a vague topic / stab in the dark but would appreciate any sort of advice - it's horrible waiting a minute each refresh to try out a change!

Cheers, Sean.

Equiponderance answered 5/3, 2010 at 11:24 Comment(4)
What kind of pages are you trying to view? Is it for example a VS2008 project?Cryology
Something's up with your DNS resolver. Not being a Windows expert I can't say precisely what, but on a Linux box this is what happens if localhost is missing from /etc/resolv.conf. Windows has an analagous file somewhere in the System directory.Winn
LOL - 1 minute, huh? I started my localhost, checked all of my emails, provided feedback on all of the items I recently purchased on eBay, browsed around on eBay a while, got tired of waiting for localhost to start, googled "slow localhost", came here, read this post, submitted my reply, and my localhost is still trying to start.Americanism
Was just about to write the same @jp2code localhost is taking FOREVER.Kemppe
H
53

I had the same problem with PHP. I solved it by changing "localhost" to "127.0.0.1" in database connection parameters like someone suggested here: https://serverfault.com/a/444338/62739 . I think it may work for you too, give it a try.

Hooten answered 8/12, 2012 at 11:17 Comment(4)
Using Flask to build a python web service and during unit testing was seeing ~1 second between queries consistently. I was using http://localhost:5000. When I switched to http://127.0.0.1:5000 the problems went away completely. I tried removing ::1 localhost from my hosts file but it didn't change anything.Manaker
Finally for me trying Mr. James solution from here worked, hope helps someone.Ectopia
it worke when i reinstall wordpress but it doesnt work when i edite wp.config,phpListlessness
@grongor, same for me, just changed the $dbname from 'localhost' to '127.0.0.1', and the slowness went away. Any idea why is that?Farmelo
D
17

Just Sharing my solution... i changed the url in my browser from localhost:port to 127.0.0.1:port which resulted in very fast loading

Damascus answered 12/2, 2015 at 11:32 Comment(2)
@finnTheHuman all i can think about is that something is taking time while translating the keyword to the appropriate address.. im notsure thoDamascus
of course these are desperate solutions, not real solutionsDamascus
F
10

I had same issues, edited my hosts file 127.0.0.1 localhost, but noticed no difference.

I then disabled Compression in the IIS panel and applied, and problem appears to now be resolved.

IIS Manager > Compression > Uncheck 'Enable dynamic content compression' and uncheck 'Enable static content compression'. Then 'Apply'.

Fumigator answered 3/7, 2014 at 0:8 Comment(1)
This appears to have fixed it for me, but I don't understand why it would when FF loaded fast with these options turned on. Anyway, really, what do I care. My dev sites now load super fast, even after a compile.Mush
B
7

I was having the same issue, IIS initial loading would take up to 10 minutes instead of the usual 30 seconds.

I opened up Task Manager to see what processes were running. Turns out Windows Defender would spike at 30% CPU usage when hitting the IIS endpoint for the first time. I tried excluding my /bin/ folders but that did not work, so I just disabled real-time protection on Windows Defender and voilà the site was loading in just 30 seconds.

Bobbobb answered 6/2, 2019 at 16:47 Comment(1)
Thanks. Your answer gave me a good start. I wrote a blog post listing all the required steps to get the refresh time of <5 secs instead of ~10 mins mandeepjanjua.com/post/…Impassion
N
5

Try to enable the Bypass proxy server for local addresses. This works for all browsers installed (Firefox, Chrome, etc).

  1. Open Internet Explorer by clicking the Start button Picture of the Start button. In the search box, type Internet Explorer, and then, in the list of results, click Internet Explorer.

  2. Click the Tools button, and then click Internet Options.

  3. Click the Connections tab, and then click LAN settings.

  4. Select the Use a proxy server for your LAN check box.

  5. Select the Bypass proxy server for local addresses

Nicely answered 10/9, 2014 at 11:8 Comment(2)
yup; this why localhost was slow for me - IT guys cleared all that out so it would auto-configure to a domain proxy. Bypassing fixes the slowdown.Unpredictable
Boom! I thought I'd already made this change - nope. debugging lickety-split now.Jagged
U
5

Disable the antivirus on the folders where is the code of the web application. In my case I have observed a big improvement with Avast antivirus.

Unalienable answered 19/11, 2014 at 11:26 Comment(0)
M
5

This suggestion fixed it for me. Clear out the WebSiteCache in C:\Users\username\AppData\Local\Microsoft\WebSiteCache

http://blog.geocortex.com/2007/12/07/slow-visual-studio-performance-solved/

Monserratemonsieur answered 17/7, 2015 at 17:37 Comment(0)
B
4

For people using a mac. When you're using different host names say test.local and test2.local. Try changing test.local to test.dev. I found out that Mac OS X lion controls the .local tld. So when you change it to something else it's faster.

And of course use above suggestions like turning off the ipv6 reference in your hosts file:
#::1 localhost

and setting this in the hosts file: 127.0.0.1 localhost

so it points to ipv4.

Bur answered 26/2, 2012 at 21:58 Comment(0)
F
2

If you are just viewing the page output (not debugging code) then go to the Web.Config file and set debug to false. This changes load time from >15 secs to <1 sec

    <system.web>
        <compilation debug="false" strict="false" explicit="true" targetFramework="4.0" />
        ...
    </system.web>
Forceful answered 4/2, 2013 at 10:26 Comment(0)
T
2

If your using .Net then turning off debug in your Web.Config is going to improve performance no end.

<compilation defaultLanguage="c#" debug="false" batch="false" targetFramework="4.0">
Trihydric answered 25/4, 2013 at 22:6 Comment(2)
Although debugging something you need on a local installation. Debug mode on should not be the reason pages load incredibly slow.Hierophant
This makes absolutely no sense given that the same site can load ultra quick in IE and FF in debug mode.. Only Chrome has the issue for me.Mush
M
2

I just changed my hosts file from this:

127.0.0.1       abc.com.au
127.0.0.1       def.com.au
127.0.0.1       hij.com.au

to

127.0.0.1       abc.com.au def.com.au hij.com.au

Note: The concatenated website line cant exceed a couple of hundred characters.

Megawatt answered 9/2, 2016 at 4:11 Comment(0)
H
1

I know the op was using an older version of IIS and this may not apply to him, but I'm posting this as it might help others. I had the same problem and none of the above IPv6 or hosts file changes worked for me. My asp.net MVC4 project was really slow after hitting F5 to refresh js changes on localhost. It was happening across all browsers - Chrome, FF, and IE. Eventually I realised I was running IIS Express 8.0 locally, and it turns out 8.0 is extremely slow when serving up js files and seems to be a bug. If I ran iisexpress on the command line and hit F5 I could see each js file took 4 or 5 seconds to load.

I ended up uninstalling IIS 8.0 and installing IIS express 7.5 and straight away the problem was fixed. Here are the steps I followed:

IIS Express 8.0 seems to be installed with VS 2012 so if you had a new install or possibly a service pack update this might upgrade the previous IIS Express version.

Hindoo answered 19/11, 2013 at 9:9 Comment(0)
S
1

I'm using Wamp Server, Windows 7 and a powerful machine.

My Apache is configured to run from a different port other than port 80. I also access my local site not via 'localhost', but a hostname mapped to my IP via dyn.com. I believe the fact that I'm running off of a different port than 80 seems to make Kaspersky's Web Anti-Virus feature very sensitive (since a lot of sketchy sites run off of different ports) and slows things down

Disabling it seems to have solved the issue.

Shevlo answered 29/1, 2014 at 1:20 Comment(0)
D
1

I fixed this problem by editing config.inc.php file which is in phpmyadmin folder: specifically changed $cfg['Servers'][$i]['host'] = 'localhost' to $cfg['Servers'][$i]['host'] = '127.0.0.1'

Dugger answered 28/11, 2020 at 11:18 Comment(0)
C
0

After building your project the website needs some time to walk through the new dll :). It's normal that loading a webpage after rebuilding takes some time. This shouldn't happen when only changing something in for example javascript.

Cryology answered 5/3, 2010 at 11:27 Comment(3)
@Younes, that being said, it shouldn't take up-to a minute on a localhost to compile for first-run. @seanxe; do you have any .dll's in the /bin directory? Any web references or references from outside the .NET framework? Finally, any looping code or anything nasty somewhere? Can you post the code-behind in question?Juliannjulianna
It can be anything as simple as Response.Write(DateTime.Now.ToLongDateString()); No dll's in the project, just standard talking to a database to retrieve data. I'm not building from VS2008 because that takes forever too, i just set my home directory to the project on IIS and browse to localhost. @Andrew McGregor - have checked my hosts file and localhost (127.0.0.1) is in there fine.Equiponderance
Sorry but then i won't be able to help you any further. I just know that using vs2008 and the dll's after rebuilding it will take long to load your website.Cryology
E
0

Run the Process Monitor to see what resources(Network, File, Registry, Threads) are being consumed and see any unnecessary resource(remote https, costly file reads) are being consumed

I had similar problem. When I run the process monitor I found that my fusion log is enabled so there are many into the disk which delayed the loading of dll after disabling fusion log IIS Express it is faster.

enter image description here

Ea answered 20/8, 2015 at 23:14 Comment(0)
G
0

The cause of this for me was that the project was located on a network drive. I moved the project to the C: drive and everything ran without any delay.

If the project is located on a network drive, try moving it to your local C: drive and try it again.

The performance increase is much more than you would expect from just network speed. I guess VS is continually accessing the files when debugging an ASP.NET MVC application. I was using VS 2017, ASP.NET MVC debugging on IIS Express and this worked for me.

I hope this helps.

Gambrell answered 8/12, 2018 at 16:36 Comment(0)
O
0

In my case, originally the following error was occurring:

Cannot read configuration file due to insufficient permissions

I fixed the error by using the proposed solution and restarted the application through IIS Manager. The original error was gone but the application was taking forever to load. I gave the permissions to IIS_IUSRS again but this time to the whole deployment folder. After this, the application was able to load though an error was showing up:

This configuration section cannot be used at this path

After resolving the above-mentioned error using the solution, the application was finally loading without giving any error.

Oatis answered 16/2, 2019 at 15:7 Comment(0)
L
0

See, Here may be some problems with your project:

  1. Poor coding. This is the most common problem everyone can face where you have coded something very poorly so it's using your resources too quickly.
  2. More than 3 seconds on localhost is extremely ridiculous since most of the sites online on internet load within 2 sec (better 1).
  3. Your machine has limited resources. Like low RAM or CPU. Most of the times this shouldn't matter but yeah, it matters.
  4. Your code is making external network request which is slowing things down. In that case you may use asynchronous programming.

Hope this helps..

Lindstrom answered 10/9, 2022 at 15:35 Comment(0)
P
0

Enable SQL Server TCP/IP protocol

In my case it was taking 5 to 10 seconds for each page of my test site running on localhost to load. These same pages load almost instantly in staging an production environments. The solution that worked for me was to enable TCP/IP protocol in Sql Server Configuration Manager. Once I enabled TCP/IP and restarted the Sql Server Service my local website was just as responsive as the deployed ones.

enter image description here

Punt answered 22/11, 2023 at 18:55 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.