diff options
| author | franck cuny <franck@lumberjaph.net> | 2011-06-16 15:18:04 +0200 |
|---|---|---|
| committer | franck cuny <franck@lumberjaph.net> | 2011-06-16 15:38:42 +0200 |
| commit | 62df64bcd85e3da4f4c38b19c727ef7670ca8355 (patch) | |
| tree | f4e9c00e5aacd1615e719870659609f1f223bb1e | |
| parent | store in memcached (diff) | |
| download | stargit-62df64bcd85e3da4f4c38b19c727ef7670ca8355.tar.gz | |
switch to redis (memcached is not yet supported on dotcloud)
Signed-off-by: franck cuny <franck@lumberjaph.net>
| -rw-r--r-- | Makefile.PL | 2 | ||||
| -rw-r--r-- | lib/StarGit.pm | 20 |
2 files changed, 8 insertions, 14 deletions
diff --git a/Makefile.PL b/Makefile.PL index a5a4d56..a425845 100644 --- a/Makefile.PL +++ b/Makefile.PL @@ -26,7 +26,7 @@ WriteMakefile( 'MooseX::ConfigFromFile' => 0.03, 'Log::Dispatchouli' => 2.005, 'Net::HTTP::Spore' => 0, - 'Dancer::Plugin::Memcached' => 0, + 'Dancer::Plugin::Redis' => 0, 'Plack::Middleware::ETag' => 0.03, 'MooseX::Role::Parameterized' => 0, 'Moose::Meta::Attribute::Custom::Trait::Chained' => 0, diff --git a/lib/StarGit.pm b/lib/StarGit.pm index 1490e77..498646a 100644 --- a/lib/StarGit.pm +++ b/lib/StarGit.pm @@ -2,7 +2,7 @@ package StarGit; use Dancer ':syntax'; use StarGit::Graph; -use Dancer::Plugin::Memcached; +use Dancer::Plugin::Redis; our $VERSION = '0.1'; @@ -15,6 +15,11 @@ get '/' => sub { get '/graph/local/:name' => sub { my $name = params->{'name'}; + if (my $cached_graph = redis->get($name)){ + debug("cache hit for $name"); + return $name; + } + my $graph = StarGit::Graph->new( name => $name, mongodb_auth => setting('mongodb') ); @@ -25,18 +30,7 @@ get '/graph/local/:name' => sub { $graph->remove_leaves(); my $serialized_graph = _finalize($graph); - memcached_store($name, $serialized_graph); - return $serialized_graph; -}; - -# XXX do we already use this one ? -get '/graph/query' => sub { - my $language = params->{language}; - - my $graph = StarGit::Graph->new( language => $language ); - $graph->build_from_query(); - - my $serialized_graph = _finalize($graph); + redis->set($name, $serialized_graph); return $serialized_graph; }; |
