Feeds:
Posts
Comments

In my previous post, I described a caching solution based on subclassing the db.ReferenceProperty class. This time I want to take this one step further and implement this on the lower level API: apiproxy_stub_map.apiproxy.

You can add hooks to the datastore, as I already showed in a previous (profiling) post. However, in order to return a cached entity instead of one retrieved from the datastore, we need more than a PreCall hook. From a PreCall hook will can not prevent the actual datastore call being made. Maybe we can “trick” MakeSyncCall by removing the keys from the argument list, but that is not a road I want to explore…

Continue Reading »

After profiling my app (see Performance profiling on GAE), it’s time to do some actual tuning. The problem is, that GAE’s datastore is not very smart about entities already loaded in the same session or request. For this reason other ORM tools like (n)Hibernate use a Session Cache. Interacting with the datastore always goes through a session cache in Hibernate. There is only a single instance of a retrieved entity in the session cache.

Continue Reading »

My GAE application for table tennis players does not perform very well. Although some parts are exceptionally fast, getting the results of a players team matches, is quite slow. I can understand it’s slower than searching for a player, but over ten times as slow? No. Sorry. I don’t understand.

Continue Reading »

At the moment I am developing a a table tennis community site, complete with match statistics. It will be totally player centered. Hence the first thing you do on the site is searching for a player. After selecting a player you get all the information on the matches of the current season, as well as the historical ratings.

Continue Reading »

Lately I have been developing a web application using Google App Engine. During development I use Firefox extensively to check the layout of the application. Every once in a while I also check the site under IE7.

Yesterday I ran into some strange problems. I use jQuery to issue ajax calls, to update parts of the screen, but under IE7 a DIV did not seem to be updated. After checking the development web server, I noticed that the Ajax call was not sent. Since I am pretty sure the Ajax call was issued, something else was going on.

Continue Reading »

Follow

Get every new post delivered to your Inbox.