[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