NAME

RSSCache - Main module of the RSS cache.

SYNOPSIS

        use RSSCache;
        RSSCache->start();

DESCRIPTION

This program will work like a caching RSS proxy. You can access RSS, RDF and Atom feeds through this cache like this:

        http://cache.server:port/http://some/feed.xml

The caching server will download the feed and cache it. Nothing special yet.

The advantage of this cache is that it keeps the feed items inside the cache for a specified amount of time (e.g. one week) instead of just returning the last 20 items or so. This is very handy if you have very busy feeds (>20 items a day or so) and you don't want to keep your RSS reader running all the time so that you don't miss any item.

An additional big advantage is gained through the client identification. You can get a client id (CID) from the RSSCache through this URL:

        http://cache.server:port/generate_cid

The server will return a client id like 'k4JOgtlf'. When using this CID inside your feed requests:

        http://cache.server:port/cid_k4JOgtlf/http://some/feed.xml

The RSSCache knows who you are and will only serve feed items that you haven't downloaded yet. This will save lots of bandwith for you, the RSSCache and the feed distributor itself. Great isn't it?

Note: This program massively uses Perl ithreads which may have negative effects on memory usage and performance. You will need Perl 5.6 or higher compiled with threads support.

CONFIGURATION

This program is configured by a configuration file called 'RSSCache.settings', which should reside in the same directory as the program itself.

The supplied default configuration file should be self-explaining.

METHODS

start

Some kind of a constructor.

You should not create multiple objects of this class as it must use package scoped variables for the threading model that would be accidentially shared between all instances of this class. So just start it once as stated in the "SYNOPSIS".

stop

This method exits this program

AUTHOR

Copyright 2006 Thomas Wittek (mail at gedankenkonstrukt dot de). All rights reserved.

LICENsE

This document is free software. It is distributed under the same terms as Perl itself.

TODO

SEE ALSO

RSSCache::Backend, RSSCache::HTTPServer, RSSCache::Log, RSSCache::Poller, RSSCache::Scheduler, RSSCache::Settings, RSSCache::Admin::Console, RSSCache::Backend::Memory