How do you get a dynamic website in another country without any servers?

Back in December I went out to Amsterdam to setup Mozilla’s first international datacenter. The build out included two database machines, three webservers, two VMWare ESX servers and two Citrix Netscalers (along with various PDUs and networking gear).

When I got back I was on a kick to get as much usage out of that facility as we could and very quickly got all of our static websites replicated out there. As expected, response times to www.mozilla.com for our European users dropped dramatically. We also setup a CVS mirror and eventually a community l10n server.

One of the last things to make its way out there is all the dynamically generated websites, most notably addons.mozilla.org. The problem, or difficulty, is that all of these sites rely on some MySQL database and replicating the read-write portion of it is not for the faint of heart (master-master across 6000 miles?). Continued reading >

How to rack a Mini.

I recently tried to rack 4 Mac Minis that we’re using for performance QA testing. Nice boxes, not really meant to be rack mounted, but in a seismic area like this, I wanted to make sure they didn’t move around much.

Front:

Mac Mini Rack - Front

Rear:

Mac Mini Rack - Back

Solvang Training Camp ‘07

While most of the country spent the weekend in Super Bowl mode, I spent this past weekend at the first annual Solvang Training Camp at Zaca Lake. It was actally closer to Los Olivos. Spent three days cycling with 60 miles on Saturday.

Saturday’s highlight, if you may, was cycling up the the gates of Neverland Ranch.

Neverland Ranch Gate

Ride stats:

Fremont BART to MoCo

Left the house way early (still dark) to catch a bike friendly BART ride to Fremont. Rained from there until somewhere off Thorndale before Marshlands. Ugh.

Butterfield Double Century

198.77 miles, ~10,000 ft of climbing, three counties, at least four area codes and 14,000 kcalories. Total time 17:29 with a moving time of around 14:30.

After failing to complete a single century last year, I set my sights on the daunting task of completing a double instead! The Butterfield Double follows an old stage couch route from Anaheim Hills through Orange County along the coast to Oceanside, turns inland towards Temecula and north through Lake Elsinore, Corona and back.

Compared to the centuries I tried last year, this had a lot less climbing (for the distance) and nothing more significant than the whole Santiago Canyon stretch (more or less). So, personally, it was more of an endurance challenge.

I had two goals on this ride -

  1. Finish
  2. Finish sub-14 hours

I exceed the data storage of my Garmin 301 GPS so my total non-moving wasn’t tracked but I’m assuming I had about 3 hours of non-moving time for a total time of 14:30. So I hit one goal, missed the other. Also learned that the 301 writes over the beginning of memory when it hits the end so you’ll notice on MotionBased my ’start’ appears to be somewhere in San Clemente - it wasn’t. It was at 5710 La Palma, Anaheim Hills, CA, some 60 miles north east of San Clemente.

Weather: Cold and wet. Well wet for about an hour but enough to completely soak my socks and my first set of gloves. Wet enough for my fingers and toes to go numb. It rained (and by rain I really mean massive down pour) from CP1 (Trabuco Canyon Store, for the locals) until the end of Antonio (and Ortega). When I hit Ortego, I swapped to my kayak gloves (more below).

The Ride: I started my ride at 4:45am and rode in the dark for about an hour until somewhere on Villa Park Road in Orange and certainly had enough light for all of Santiago Canyon. It started raining right after I left the first CP.

CP2 was along the coast at San Onofre Beach. I stopped long enough to ring out my socks and get some feeling back in my right foot. From here it was about 5 miles until Las Pulgas and the freeway and 7.5 miles to Oceanside where I turned inland for 30 some miles. CP3 was at 101 miles. Century done. Last 10 miles were tough - I think it was merely the anticipation of getting to the stop. That and while the road looked flat it was a steady climb.

The majority of the climbing was from CP3 to 4, through Fallbrooks (nice area) and Temecula (looks like Laguna Niguel). I expected my quads to burn but I kept a good pace and my legs felt really strong. My only aggrevation came from my Achilles, which is really sore today (Monday). I had no idea how far apart the CPs were so when planning, I decided to take my water bladder with me. As it was, I was doing about two hours between each so before doing the climb, I drained half my bladder to drop some weight.

Drop bags were at CP4 (139 miles) and boy did I plan this right - I pulled Jeff’s complete costume change move! Fresh socks, fresh undershirt, bike jersey, bike pants, gloves, buff. Also had my lights and fresh fuel and unloaded spent fuel flasks and trash.

The next 30 miles were tough - I was tired of popping my pills and taking my food and had to force myself to eat out of fear of bonking. The Ramen noodle soup at CP5 was a real welcome. I took a good break here to warm up and feed before dealing with the last 25 miles.

Overall, great ride. Would often ride with someone for a couple miles until one of us would climb faster and drop the other. At night it became more of a necessity as eveyone would want to ride with someone who had better lights (or looked like they knew where they were going more).

Important Rules Followed:

  1. Bob’s “Don’t follow lost people” - I watched a mass of riders blindly draft behind some dude who clearly wasn’t paying attention to his route sheet. I turned right, they went straight. Ten minutes later a handful of guys passed me complaining about missing the turn.
  2. Jeff’s “custume chance” - I thought I was going overboard with a full outfit change but that really paid off. I dumped my cold sweaty clothes just in time for the cold night ride back.

Things I learned:

  1. Dry socks. I should have packed an extra pair to carry with me. Sure, I had a pair in my drop back but I need them 100 miles before then!
  2. Kayak gloves. About the best glove liners a biker can ask for! I had these from an AR I did last year. Not only are they warm, they’re water resistant. Both of which are important when it’s cold and wet.
  3. Surf shirt. This works great as an undershirt - it’s like giant arm warmers that cover your chest and trap in heat.
  4. Buff. I can probably never say enough about the Buff. These things are so thin yet so warm. Somehow they wicked sweat away and kept my ears, neck, nose and mouth warm. Even when it was raining. Amazing.

Ride Around the Bear

This ride was hard. 100 miles, 9,000+ feet of elevation gain. Many hours on my bike.

Continued reading >

What’s a Buff?

Some of you have asked what a Buff is. Well now you know.

Hindsight

I’ve been thinking a lot about Saturday’s race and what I could have done differently. Two things come to my mind most immediately.

  1. At the top of Jack Rabbit trail, I should have just taken off my shoes and socks and ran through the big mud “lake”. I would have saved at least 10-15 minutes not having to wait for people to slowly walk along the embankment and spend time cleaning my cleats off. Would have saved time at the first stop too, not having to clean my cleats.
  2. Eat while riding. I should have spent less time at stop #2 - just long enough to take a bathroom break and re-water. I should have eaten my solid foods (and only half of it at that) while riding. I was going slow enough that eating while riding wouldn’t have been impossible.

Anyways, I guess this is why there’s a next year.

Breathless

I came. I saw. I got my butt kicked.

74.32 miles in 6:55:41 with 9,237 feet of elevation gain. That works out to an average speed of 10.7 mph. Yeah, I know - not a century. I missed the checkin time by 30 minutes at Pass 3 and wasn’t allowed (”strongly encouraged”) to go the remaining 19.1 miles.

Continued reading >