Query: dancer::route::cache
OS: debian
Section: 3pm
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
Dancer::Route::Cache(3pm) User Contributed Perl Documentation Dancer::Route::Cache(3pm)NAMEDancer::Route::Cache - route caching mechanism for DancerSYNOPSISmy $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/');DESCRIPTIONWhen 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 one 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.ATTRIBUTESsize_limit($limit) Allows one 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 limitAUTHORSawyer XLICENSE AND COPYRIGHTCopyright 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.2 2012-01-27 Dancer::Route::Cache(3pm)
Related Man Pages |
---|
dancer::cookies(3pm) - debian |
dancer::fileutils(3pm) - debian |
dancer::session::yaml(3pm) - debian |
dancer::timer(3pm) - debian |
ppi::cache(3pm) - debian |
Similar Topics in the Unix Linux Community |
---|
How to delete some ipv6 routes? |
Linux - Persistent routes not working |
Centos-quick way to check if static routes are persistent |
Add persistent route in cent os 6.5 |