Dancer::Route::Cache man page on Pidora

Man page or keyword search:  
man Server   31170 pages
apropos Keyword Search (all sections)
Output format
Pidora logo
[printable version]

Dancer::Route::Cache(3User Contributed Perl DocumentatiDancer::Route::Cache(3)

NAME
       Dancer::Route::Cache - route caching mechanism for Dancer

SYNOPSIS
	   my $cache = Dancer::Route::Cache->new(
	       path_limit => 300, # optional
	   );

	   # storing a path
	   # /new/item/ is the path, $route is a compiled route
	   $cache->store_path( 'get', '/new/item/', $route );
	   my $cached_route = $cache->route_from_path('/new/item/');

DESCRIPTION
       When Dancer first starts, it has to compile a regexp list of all the
       routes.	Then, on each request it goes over the compiled routes list
       and tries to compare the requested path to a route.

       A major drawback is that Dancer has to go over the matching on every
       request, which (especially on CGI-based applications) can be very time
       consuming.

       The caching mechanism allows to cache some requests to specific routes
       (but NOT specific results) and run those routes on a specific path.
       This allows us to speed up Dancer quite a lot.

METHODS/SUBROUTINES
   new(@args)
       Creates a new route cache object.

	   my $cache = Dancer::Route::Cache->new(
	       path_limit => 100,   # only 100 paths will be cached
	       size_limit => '30M', # max size for cache is 30MB
	   );

       Please check the "ATTRIBUTES" section below to learn about the
       arguments for "new()".

   route_from_path($path)
       Fetches the route from the path in the cache.

   store_path( $method, $path => $route )
       Stores the route in the cache according to the path and $method.

       For developers: the reason we're using an object for this and not
       directly using the registry hash is because we need to enforce the
       limits.

   parse_size($size)
       Parses the size wanted to bytes. It can handle Kilobytes, Megabytes or
       Gigabytes.

       NOTICE: handles bytes, not bits!

	   my $bytes = $cache->parse_size('30M');

	   # doesn't need an existing object
	   $bytes = Dancer::Route::Cache->parse_size('300G'); # works this way too

   route_cache_size
       Returns a rough calculation the size of the cache. This is used to
       enforce the size limit.

   route_cache_paths
       Returns all the paths in the cache. This is used to enforce the path
       limit.

ATTRIBUTES
   size_limit($limit)
       Allows to set a size limit of the cache.

       Returns the limit (post-set).

	   $cache->size_limit('10K');	   # sets limit
	   my $limit = $cache->size_limit; # gets limit

   path_limit($limit)
       A path limit. That is, the amount of paths that whose routes will be
       cached.

       Returns the limit (post-set).

	   $cache->path_limit('100');	   # sets limit
	   my $limit = $cache->path_limit; # gets limit

AUTHOR
       Sawyer X

LICENSE AND COPYRIGHT
       Copyright 2010 Sawyer X.

       This program is free software; you can redistribute it and/or modify it
       under the terms of either: the GNU General Public License as published
       by the Free Software Foundation; or the Artistic License.

       See http://dev.perl.org/licenses/ for more information.

perl v5.14.1			  2011-06-15	       Dancer::Route::Cache(3)
[top]

List of man pages available for Pidora

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net