use Cache::FileCache; my $cache = Cache::FileCache->new ( 'auto_purge_on_get' => 1, 'default_expires_in' => '2 hours' ); . . $cache->get( $key ); if ( !defined $cache->get( $key ) ) { # Create new session } $cache->set( $key, $value );