Due to astronomical levels of crappiness inherent in Apache, CGI, Perl and Movable Type.
All the hard work is done; all I have to do is get the script to return a valid XML repsonse. Not only will it not do this, it takes up two seconds of CPU time not doing it.
All it has to do is write one line to a log file, return a five-line XML reply, and quit.
Can it do it? No.
Does it even fail quickly? No.
I'm going to replace it with some Python code and hard-coded SQL.
I'm going to replace it with some direct calls to the Perl CGI library and a switch on request_method() because the trackback script has two functions.
Bah.
It now logs a trackback in 40 milliseconds. Still far slower than I'd like, but 50 times faster than it was. And you're just not going to get much faster with a Perl-based CGI application. To do better you need something like mod_perl, or PHP, or a persistent server. And I'm not going to hack MT to that degree, thanks.
Anyway, I'll let it accumulate trackbacks for a bit and then run program two, and if that works well I'll run program three, and if that works well, I'll set it all to run automagically.
It can't be worse than what we had.
Update:
P-I-N-G-O
P-I-N-G-O
P-I-N-G-O
And Pingo was his name-o!
It works!!!!!!!!!!! :D
Oops. The call from stage two to stage three bobbled it. Fixy fixy.
No oops - it worked, but the error log went to the wrong place. No problem.
A NEW TRACKBACK SYSTEM IS ARISING! ITS VICTORY IS AT HAND! THERE WILL BE NO DAWN... FOR SPAM!
Posted by Pixy Misa at November 22, 2005 09:01 AM | TrackBack