here is a small example :
@PersistenceCapable public class Property implements Serializable{ @PrimaryKey @Persistent private String Key; @Persistent(serialized = "true", defaultFetchGroup = "true") private Object Value; @Persistent private Long Expiry; private Property(String key, Object value, long expirationDeltaMillis){ this.Key = key; this.Value = value; if(expirationDeltaMillis > 0) this.Expiry = new Date().getTime() + expirationDeltaMillis; } public static <T> T get(String key) { Property property = WCMSHelper.getObjectById(Property.class, key); if (property != null && (property.Expiry == null || property.Expiry >= new Date().getTime())) return (T) property.Value; else return null; } public static void put(String key, Object value) { Property.put(key, value, -1); } public static void put(String key, Object value, long expirationDeltaMillis) { Property property = new Property(key, value, expirationDeltaMillis); *pmf*.makePersistent(property); *cache*.put(property.Key, property); } } 2010/1/8 Prashant Gupta <nextprash...@gmail.com> > > > 2010/1/8 Nicanor Cristian <nicanor.bab...@gmail.com> > >> On 01/08/2010 10:58 AM, Prashant Gupta wrote: >> >> >> >> 2010/1/8 nicanor.babula <nicanor.bab...@gmail.com> >> >>> Hi everyone. >>> >>> How memcache works on GAE? Let me explain: >>> Do I get one memcache instance per app instance or there is one >>> memcache instance for all instastances of my app? >>> >> one instance for all app instances. >> >> so if one app instance does: >> memcacheService.put("loggedUser", userData1); >> >> and later another app instance does: >> (UserData) memcacheService.get("loggedUser"); >> The latter instance will get the same data that the first instance put? >> > yeah. > >> >> My app uses google accounts to handle users. I am thinking that it >>> might be faster reading the current user data from the memcache >>> instead of calling userService.getCurrentUser(). It would be a good >>> approach? >> >> no! memcache data is not persistent, your memcache data could be removed >> any time for any reason, like limited memory, cache age, etc. I suggest you >> to go through docs. >> >> I don't want to use it for persistence. I use the datastore for >> persistence. >> Once a user logs in I want to write to the memcache the logged user data >> in order to read it later (during one login session). >> > yes you can do this but memcache doesn't guarantee to keep the data for you > when you come back to see it. so, you must use a persistent storage i.e. > datasore, to make sure that you will get your data back next time. what you > can do is to save your data to datastore and memcache both, next time if you > do not find your data in memcache you can get it from datastore and save it > to memcache again for next time ! > >> >> >> >> >> Thanks, >>> Cristian. >>> >>> -- >>> 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-j...@googlegroups.com. >>> To unsubscribe from this group, send email to >>> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@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-j...@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-j...@googlegroups.com. >> To unsubscribe from this group, send email to >> google-appengine-java+unsubscr...@googlegroups.com<google-appengine-java%2bunsubscr...@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-j...@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.