[Catalyst] New Catalyst site

Carl Johnstone catalyst at fadetoblack.me.uk
Wed Feb 28 16:21:07 GMT 2007


> How is the content managed? I'd like to know if you integrated your 
> Catalyst application with an existing content management system and  if 
> so, how you pulled this off. Having to choose a CMS and framework  for a 
> similar site myself this really could help me make a decision.

We've got an existing CMS - Polymedia from an Italian company called TXT 
www.txt.it. It works using XML internally, and uses Oracle (or MS SQL) as a 
back-end database. It's quite good for integration and will feed data out 
(via XSLT) as XML or into a DB table etc. We've been using it for around 5 
years now, and have built up an archive of around 150,000 articles for the 
MEN. In addition we have two other newspaper groups with 58,000 and 67,000 
articles respectively.

The downer is that the Polymedia interface is IE only (relies on MSXML), 
although it comes with an integrated, if basic, ActiveX image-editing 
component.

So for an article, from Polymedia we generate 4 outputs. Firstly an XML file 
is stored on the filesystem for Catalyst use. Another XML file is generated 
and fed into FAST (www.fastsearch.com) which provides the search back-end 
for the site. Finally we feed some of the meta-data (not the full content) 
into DBs - both MySQL and Oracle.

The static resources - images/audio/video - are all fed separately onto a 
dedicated server.

MySQL is our new choice of DB and we use it to run things like most popular 
and most recent stories. The story comments are still in Oracle as we 
haven't (yet) redeveloped the interface the journalists use to manage these 
(that interface shows the journalist the headline and teaser of the story.)

We use XML::Simple in a Catalyst model to parse stories into perl objects, 
making use of a FastMMap Cache (per-server) to store the parsed XML for up 
to 2 minutes.

At the front-end we have three load-balanced webservers running Catalyst to 
serve the pages, and a further server to serve the static resources. We 
simply do this by using an alternate server name in the HTML rather than 
having to worry about proxies. We then just check the server logs to ensure 
that nothing is falling through.

Think that's all, one of my colleagues lurks on the list so if I've posted 
something inaccurate it may tempt him into posting :-)

Carl




More information about the Catalyst mailing list