Ever since I got started in internet marketing and building blogs, every single expert I read advised changing permalinks to make them more search engine friendly. Almost always, the recommendation was to change the default permalink setting to /%postname% and then end it with either a /, a .htm or .html, or a .php. I set all of my sites up this way until I ran into a huge problem in January of 2011.
I spent about a month and a half building a very large authority site back in October of 2010. This site has almost 1500 pages and I add an original post each week or so. In January of 2011, all of a sudden, my site would not load. I couldn't even get beyond the dashboard in the admin area investigate. I spent several hours on the phone with my hosting company who were absolutely stumped as well.
I was getting a time-out error on line 867 of one of the wordpress files and even tracking that down didn't give me any real clues as to what was happening. We tried extending the time parameters but to no avail. I performed web search after web search until I finally stumbled upon the perfect search terms and I was lucky enough to find someone with a similar error who had traced it to the permalink settings.
Here's the deal. WordPress appends pages with the page title automatically. When the custom permalink setting is used to do the same for posts, it forces wordpress to parse every single page and post every time it loads. Not only does it slow down wordpress, it can run into time-out errors as it did in the case of my large site. I have since begun using a permalink that begins with the year, then the postname to circumvent the possibility of this happening again. My current permalink settings are as follows: /%year%/%postname%/ so that my urls now look like this http://www.mysite.com/2011/todayspost/ and the pages http://www.mysite.com/todayspage/.
So that's it. My post titles are still in the url and everyone's happy!