All entries for Monday 10 May 2004
May 10, 2004
Hot redeployment rocks!
Just deployed a new version of SiteBuilder. In the past, this was a massive PIA: Up at 5:45 am, check that no-one's in the middle of an edit session, bring the server down, copy the new deployment files in to place, restart the server, re-init the applications, frantically check that everything important is still working, and cross fingers that we wouldn't get a seg fault when the load went up again.
Now, however, it's a different kettle of fish entirely. Our big new server can quite happily run 2 instances of the app server side by side, so I just tweak the mod_jk settings to take one server out at a time, upgrade it, test it, put it back, then do the other one. Because there's no downtime, I don't have to do upgrades in the middle of the night, and it doesn't matter if something goes wrong and it takes longer than expected to do the upgrade.
The single most stressful aspect of my job, removed at a stroke. Bliss… :-)
Check it out. This is bacchus 'working hard' (reloading the cache after a restart, whilst being spidered by atomz and taking about 150 hits/min). Note how the top process is actually the backup trundling away in the background. If this box was any more idle it would be on the golf course :-)
load averages: 0.24, 0.30, 0.39 23:26:10 152 processes: 150 sleeping, 1 stopped, 1 on cpu CPU states: 90.2% idle, 2.7% user, 2.5% kernel, 4.6% iowait, 0.0% swap Memory: 32G real, 25G free, 9402M swap in use, 48G swap free PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND 7967 root 1 43 0 5424K 3088K sleep 0:39 1.36% save 7807 jboss 91 29 10 3243M 517M sleep 4:04 1.24% java 7815 oracle 1 59 0 2643M 2600M sleep 0:10 0.18% oracle 7598 jboss 103 29 10 3233M 634M sleep 3:00 0.16% java
I am not an animal
New animated comedy from the BBC, featuring Steve Coogan amongst others. Episode 1 had some corking moments – the gung-ho animal rights activist crashing his van into an otter sanctuary, and the cold-lazarus-style vivisected cat's head enjoying a last cigarette were particularly pleasing (OK, maybe it doesn't sound quite so funny written down).
But my favourite moment was the cybernetic rabbit with 1/2 a human brain grafted on, now employed as a IT helpdesk phone operative. I don't know why that should be so funny, but it is :-)
Classfinder
Colin pointed me in the direction of Classfinder – a fantastic little tool.
Basically, it's a mini web-server that knows how to unpack JARS, display java source and JavaDoc. You set it up, then drop JAR files containing your projects' source into it's deploy directory. It upacks them and creates hyperlinked, pretty-printed HTML source code listings. If you give it access to JAD, then it doesn't even need the source files – it can just decompile the classes. Drop in the JDK source as well, and you have the perfect code-review tool. Fantastic. Much quicker and easier than firing up an IDE, checking the project out of CVS, and navigating to the class you want!
Here's my instance . Try starting from a search for LinksOwner. (n.b. probably won't work if you're outside the campus firewall)