You wont be able to run Redis on AppEngine.
You can use AppScale though.

http://appscale.cs.ucsb.edu/datastores.html#redis

The only thing is that Redis only replicates master-slave by now, so you got
a single point of failure.



On Mon, Oct 3, 2011 at 7:11 PM, mscwd01 <mscw...@gmail.com> wrote:

> Thanks Ikai, if I were to get Redis working on App Engine would it
> work across multiple instances if it's all held in memory?
>
> Regardless, people must be using the memcache to cache data before
> persisting updates to the datastore, how is everyone else achieving
> this?
>
> On Oct 3, 10:56 pm, "Ikai Lan (Google)" <ika...@google.com> wrote:
> > The publicly available Memcache doesn't have this functionality either,
> and
> > it's really not as simple as you might think. What if there's a lot of
> data?
> > Do you need a cursor? Should you lock all Memcache shards? And so forth.
> >
> > If you're interested in a project that does something similar, you should
> > check out Redis. It's a key/value store with data structures that exists
> all
> > in memory, where values are asynchronously flushed to disk.
> >
> > --
> > Ikai Lan
> > Developer Programs Engineer, Google App Engine
> > plus.ikailan.com | twitter.com/ikai
> >
> >
> >
> >
> >
> >
> >
> > On Mon, Oct 3, 2011 at 2:29 PM, mscwd01 <mscw...@gmail.com> wrote:
> > > That's a shame, it's a real disadvantage not having that simple
> > > functionality.
> >
> > > Thanks for your example, although I found it a little difficult to
> > > understand it completely. Are you suggesting having an entry in the
> > > cache with a key string "allKeys" which maps to a List of keys
> > > belonging to all the other entities in the cache? Would this allow me
> > > to iterate through the keys, saving the entity to the datastore and
> > > then removing the entry from the cache?
> >
> > > Also what is the "putIfUntouched" statement for?
> >
> > > Thanks again
> >
> > > On Oct 3, 9:51 pm, Bruno Fuster <brunofus...@gmail.com> wrote:
> > > > I don't think so.
> >
> > > > You could create a key with all entities ids that need to be updated.
> >
> > > > Something like:
> >
> > > > public void saveEntity() {
> >
> > > >     cache.put(key, entity);
> > > >     queue.add(withUrl("/entitiesToUpdate?id="+entity.getId()));
> >
> > > > }
> >
> > > > and then
> >
> > > > public void entitiesToUpdate(Long id) {
> >
> > > >   IdentifiableValue i = cache.getIdentifiable("allKeys");
> > > >   List<Long> keys = i.getValue();
> > > >   keys.add(id);
> >
> > > >   boolean put = cache.putIfUntouched("allKeys", i, keys);
> > > >   if (!put) {
> > > >        //response 409 for conflict due to concurrency so appengine
> will
> > > > retry this later
> > > >   }
> >
> > > > }
> > > > On Mon, Oct 3, 2011 at 5:38 PM, mscwd01 <mscw...@gmail.com> wrote:
> > > > > Hey
> >
> > > > > How would one return all the values stored within the memcache?
> > > > > I have tried using entrySet() and values() methods on the cache but
> > > > > both result in an java.lang.UnsupportedOperationException.
> >
> > > > > Ideally, I need to return all the entities stored within the cache
> and
> > > > > bulk save them to the datastore - is this possible?
> >
> > > > > Thanks
> >
> > > > > --
> > > > > You received this message because you are subscribed to the Google
> > > Groups
> > > > > "Google App Engine for Java" group.
> > > > > To post to this group, send email to
> > > > > google-appengine-java@googlegroups.com.
> > > > > To unsubscribe from this group, send email to
> > > > > google-appengine-java+unsubscr...@googlegroups.com.
> > > > > For more options, visit this group at
> > > > >http://groups.google.com/group/google-appengine-java?hl=en.
> >
> > > > --
> > > > Bruno Fuster
> >
> > > --
> > > You received this message because you are subscribed to the Google
> Groups
> > > "Google App Engine for Java" group.
> > > To post to this group, send email to
> > > google-appengine-java@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > > google-appengine-java+unsubscr...@googlegroups.com.
> > > For more options, visit this group at
> > >http://groups.google.com/group/google-appengine-java?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine for Java" group.
> To post to this group, send email to
> google-appengine-java@googlegroups.com.
> To unsubscribe from this group, send email to
> google-appengine-java+unsubscr...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/google-appengine-java?hl=en.
>
>


-- 
Bruno Fuster

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" group.
To post to this group, send email to google-appengine-java@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.

Reply via email to