I maintain and develop a website for an insurance agency. All of our new business starts by someone coming to the website to fill out our online application. So naturally when something goes wrong with the site there's a lot of responsibility on my shoulders.
Now, for the past few days I've been preparing for a web server migration. We were going to move the website and SQL database to a new dedicated server in a datacenter. This morning was the set day to do the big move. I planned everything ahead of time very carefully. I wanted to minimize the downtime and this article was a big help: http://www.sqlservercentral.com/articles/Administering/2688/
The plan was this:
1.) Perform a complete backup of the database
2.) Restore the complete backup onto the new server with NORECOVERY
3.) Take down the online quoting process on the site for everyone except for my IP (for testing purposes), and change the connection string to point to the new server
4.) Perform a differential backup of the database
5.) Restore the differential backup with NORECOVERY
6.) Restore the differential backup with RECOVERY
7.) Test the site and if everything is OK then bring the site back online (still on the old server at this point)
8.) Change the DNS settings
I had tested all of this ahead of time and determined that we should be able to limit the downtime to just about 3 minutes. I don't migrate websites often so I thought I was the man for getting it down to just 3 minutes of downtime.
Well when it finally came down to it the migration didn't go as smoothly as I was hoping. Apparently the production server was set up to block all IP addresses except for those explicitly allowed in an exception list. And in the exception list was the IP I was testing from. So of course my testing worked but when it was pushed to production, it didn't. I didn't know the server had been configured that way and it took me awhile to figure that out. So as a result we had closer to two hours of downtime for the users that still had cached DNS. Realistically, most users wouldn't have had cached DNS so most users visiting the site during that window of time would have seen the site from the new web server. But still -- that sucked.
The good news is everything is configured properly now. The new web server is on a connection with more bandwidth than the old server. And it's a quad-core machine with 4GB of RAM. So it has the power to support us and then some. I also configured it to use HTTP compression (which we didn't have on the old server) and the impact of that can be pretty huge when it comes to download times.
Thursday, September 27, 2007
Friday, September 14, 2007
Winamp: Sometimes the small companies do it best
I've used NullSoft's Winamp as my music player of choice for years. It's a free lightweight media player and it does what it does very well. I've never seen it crash. It has always been responsive and quick to start up. And it has an easy-to-use EQ which I always configure to my liking for a particular computer and speaker setup.
Over the years many other media players have come along and they have evolved. Some will automatically download album art when you put in a CD, and they certainly have a lot of other "neat" features. Although honestly I found most of it was extra fluff that I didn't need. Winamp, on the other hand, has taken on many updates and revisions but it's strength is still the fact that it's a simple, efficient, and easy to use music player. I love the fact that Nullsoft has not turned it into bloatware.
For some reason, for a little while I was using one of Winamp's rivals, Windows Media Player on my work computer. I'll tell you what, it's like comparing a 2,000 pound Lotus Exige to a plump 3,500 pound Mustang GT. Winamp is just so "lightweight" and quick to respond to my every request.
Digging deeper I uncovered a shocking difference between the two players. For those of you who like numbers, I ran each one to see how much memory each player would consume while simply playing an MP3 (no visualizations), and running Winamp in "classic" mode.
Here are the results:
Winamp 5.35: 7,608 KB
Windows Media Player 11: 66,508 KB
Over the years many other media players have come along and they have evolved. Some will automatically download album art when you put in a CD, and they certainly have a lot of other "neat" features. Although honestly I found most of it was extra fluff that I didn't need. Winamp, on the other hand, has taken on many updates and revisions but it's strength is still the fact that it's a simple, efficient, and easy to use music player. I love the fact that Nullsoft has not turned it into bloatware.
For some reason, for a little while I was using one of Winamp's rivals, Windows Media Player on my work computer. I'll tell you what, it's like comparing a 2,000 pound Lotus Exige to a plump 3,500 pound Mustang GT. Winamp is just so "lightweight" and quick to respond to my every request.
Digging deeper I uncovered a shocking difference between the two players. For those of you who like numbers, I ran each one to see how much memory each player would consume while simply playing an MP3 (no visualizations), and running Winamp in "classic" mode.
Here are the results:
Winamp 5.35: 7,608 KB
Windows Media Player 11: 66,508 KB
Subscribe to:
Posts (Atom)