标题：Google App Engine编程
基本信息
作者： (美)Sanderson    
出版社：东南大学出版社 
ISBN：9787564124939
上架时间：2011-1-4
出版日期：2011 年1月
开本：16开
目录
preface xiii 
1. introducing google app engine 1 
the runtime environment 2 
the static file servers 4 
the datastore 4 
entities and properties 5 
queries and indexes 6 
transactions 6 
the services 8 
google accounts 9 
task queues and cron jobs 9 
developer tools 10 
the administration console 11 
things app engine doesn’t do...yet 12 
getting started 13 
2. creating an application 15 
setting up the sdk 15 
installing the python sdk 16 
installing the java sdk 20 
developing the application 24 
.the user preferences pattern 24 
developing a python app 25 
developing a java app 39 
the development console 54 
registering the application 55 
the application id and title 57 
setting up a domain name 58 
google apps and authentication 59 
uploading the application 60 
introducing the administration console 
3. handling web requests 63 
the app engine architecture 64 
configuring the frontend 66 
configuring a python app 66 
configuring a java app 68 
domain names 69 
app ids and versions 70 
request handlers 72 
static files and resource files 75 
secure connections 81 
authorization with google accounts 83 
how the app is run 85 
the python runtime environment 86 
the java runtime environment 87 
the sandbox 88 
app caching 89 
logging 93 
quotas and limits 96 
request limits 96 
cpu limits 97 
service limits 98 
deployment limits 98 
billable quotas 100 
resource usage headers 101 
4. datastore entities 103 
entities, keys, and properties 104 
introducing the python datastore api 105 
introducing the java datastore api 108 
property values 110 
strings, text, and blobs 112 
unset versus the null value 112 
multivalued properties 113 
keys and key objects 114 
using entities 116 
getting entities using keys 116 
inspecting entity objects 117 
saving entities 118 
deleting entities 119 
5. datastore queries 121 
queries and kinds 122 
query results and keys 122 
gql 123 
the python query api 126 
the query class 127 
gql in python 128 
retrieving results 129 
keys-only queries 131 
the java query api 132 
keys-only queries in java 133 
introducing indexes 134 
automatic indexes and simple queries 136 
all entities of a kind 137 
one equality filter 137 
greater-than and less-than filters 138 
one sort order 139 
queries on keys 141 
kindless queries 142 
custom indexes and complex queries 143 
multiple sort orders 143 
filters on multiple properties 144 
multiple equality filters 147 
not-equal and in filters 150 
unset and nonindexed properties 150 
sort orders and value types 152 
queries and multivalued properties 153 
a simple example 153 
mvps in python 154 
mvps and equality filters 155 
mvps and inequality filters 156 
mvps and sort orders 157 
exploding indexes 159 
configuring indexes 159 
index configuration for python 160 
index configuration for java 161 
6. datastore transactions 163 
entities and entity groups 165 
keys, paths, and ancestors 166 
ancestor queries 167 
what can happen in a transaction 168 
transactional reads 169 
transactions in python 169 
transactions in java 172 
how entities are updated 175 
how entities are read 178 
batch updates 179 
how indexes are updated 180 
7. data modeling with python 183 
models and properties 184 
property declarations 185 
property value types 186 
property validation 187 
nonindexed properties 188 
automatic values 189 
list properties 190 
models and schema migration 191 
modeling relationships 192 
one-to-many relationships 195 
one-to-one relationships 195 
many-to-many relationships 196 
model inheritance 198 
queries and polymodels 199 
creating your own property classes 200 
validating property values 201 
marshaling value types 202 
customizing default values 204 
accepting arguments 205 
8. the java persistence api 207 
setting up jpa 208 
entities and keys 209 
entity properties 212 
embedded objects 213 
saving, fetching, and deleting objects 214 
transactions in jpa 216 
queries and jpql 217 
relationships 220 
for more information 225 
9. the memory cache 227 
the python memcache api 228 
setting and getting values in python 229 
setting and getting multiple values 230 
memcache namespaces 231 
cache expiration 231 
deleting keys 232 
memcache counters 233 
cache statistics 233 
the java memcache api 234 
10. fetching urls and web resources 239 
fetching urls in python 240 
fetching urls in java 242 
asynchronous requests in python 244 
rpc objects 246 
processing results with callbacks 247 
11. sending and receiving mail and instant messages 251 
enabling inbound services 253 
sending email messages 254 
sender addresses 255 
recipients 256 
attachments 257 
sending email in python 258 
sending email in java 261 
receiving email messages 263 
receiving email in python 264 
receiving email in java 266 
sending xmpp messages 267 
sending a chat invitation 269 
sending a chat message 270 
checking a google talk user’s status 271 
receiving xmpp messages 272 
receiving xmpp messages in python 273 
receiving xmpp messages in java 275 
12. bulk data operations and remote access 277 
setting up the remote api for python 278 
setting up the remote api for java 279 
using the bulk loader tool 280 
installing sqlite 280 
backup and restore 281 
uploading data 282 
downloading data 286 
controlling the bulk loader 289 
using the remote shell tool 290 
using the remote api from a script 291 
13. task queues and scheduled tasks 293 
task queues 294 
processing rates and token buckets 295 
elements of a task 296 
task handlers and retries 297 
testing and managing tasks 299 
using task queues in python 299 
using task queues in java 304 
transactional task enqueueing 307 
scheduled tasks 308 
14. the django web application framework 313 
installing django 314 
creating a django project 315 
the request handler script 316 
the django app engine helper 317 
creating a django application 320 
using app engine models with django 322 
using django unit tests and fixtures 324 
using django forms 327 
15. deploying and managing applications 333 
uploading an application 334 
using versions 335 
managing service configuration 337 
managing indexes 337 
browsing and downloading logs 339 
inspecting the datastore 342 
application settings 342 
managing developers 343 
quotas and billing 344 
getting help 345 
index 347