Книги и журналы » Компьютерная литература » Программирование (книги)
Programming Google App Engine, 2nd EditionГод: October 2012
Автор: Dan Sanderson
Издательство: O'Reilly Media
ISBN: 978-1-4493-9826-2
Язык: Английский
Формат: PDF
Качество: Изначально компьютерное (eBook)
Интерактивное оглавление: Да
Количество страниц: 538
Описание:
Google App Engine makes it easy to create a web application that can serve millions of people as easily as serving hundreds, with minimal up-front investment. With Programming Google App Engine, Google engineer Dan Sanderson provides practical guidance for designing and developing your application on Google’s vast infrastructure, using App Engine’s scalable services and simple development model.
Through clear and concise instructions, you’ll learn how to get the most out of App Engine’s nearly unlimited computing power. This second edition is fully updated and expanded to cover Python 2.7 and Java 6 support, multithreading, asynchronous service APIs, and the use of frameworks such as Django 1.3 and webapp2.
• Understand how App Engine handles web requests and executes application code
• Learn about new datastore features for queries and indexes, transactions, and data modeling
• Create, manipulate, and serve large data files with the Blobstore
• Use task queues to parallelize and distribute computation across the infrastructure
• Employ scalable services for email, instant messaging, and communicating with web services
• Track resource consumption, and optimize your application for speed and cost effectiveness
[spoiler="Примеры страниц"]


[/spoiler]
[spoiler="Оглавление"]
Chapter 1 : Introducing Google App EngineThe Runtime Environment
The Static File Servers
The Datastore
The Services
Namespaces
Google Accounts, OpenID, and OAuth
Task Queues and Cron Jobs
Developer Tools
The Administration Console
Things App Engine Doesn’t Do...Yet
Getting Started
Chapter 2 : Creating an ApplicationSetting Up the SDK
Developing the Application
Registering the Application
Uploading the Application
Introducing the Administration Console
Chapter 3 : Configuring an ApplicationThe App Engine Architecture
Configuring a Python App
Configuring a Java App
Domain Names
App IDs and Versions
Multithreading
Request Handlers
Static Files and Resource Files
Secure Connections
Authorization with Google Accounts
Environment Variables
Inbound Services
Custom Error Responses
Administration Console Custom Pages
More Python Features
Java Servlet Sessions
Chapter 4 : Request Handlers and InstancesThe Runtime Environment
The Request Handler Abstraction
Introducing Instances
Request Scheduling and Pending Latency
Warm-up Requests
Resident Instances
The Instances Console
Instance Hours and Billing
Instance Classes
Chapter 5 : Datastore EntitiesEntities, Keys, and Properties
Introducing the Python Datastore API
Introducing the Java Datastore API
Property Values
Keys and Key Objects
Using Entities
Allocating System IDs
The Development Server and the Datastore
Chapter 6 : Datastore QueriesQueries and Kinds
Query Results and Keys
GQL
The Python Query API
The Java Query API
Introducing Indexes
Automatic Indexes and Simple Queries
Custom Indexes and Complex Queries
Not-Equal and IN Filters
Unset and Nonindexed Properties
Sort Orders and Value Types
Queries and Multivalued Properties
Query Cursors
Projection Queries
Configuring Indexes
Chapter 7 : Datastore TransactionsEntities and Entity Groups
What Can Happen in a Transaction
Transactions in Python
Transactions in Java
How Entities Are Updated
How Entities Are Read
Batch Updates
How Indexes Are Updated
Cross-Group Transactions
Chapter 8 : Datastore AdministrationInspecting the Datastore
Managing Indexes
The Datastore Admin Panel
Accessing Metadata from the App
Remote Controls
Chapter 9 : Data Modeling with PythonModels and Properties
Property Declarations
Modeling Relationships
Model Inheritance
Queries and PolyModels
Creating Your Own Property Classes
Chapter 10 : The Java Persistence APISetting Up JPA
Entities and Keys
Entity Properties
Embedded Objects
Saving, Fetching, and Deleting Objects
Transactions in JPA
Queries and JPQL
Relationships
For More Information
Chapter 11 : The Memory CacheCalling Memcache from Python
Calling Memcache from Java
Keys and Values
Setting Values
Getting Values
Deleting Values
Atomic Increment and Decrement
Compare and Set
Batching Calls to Memcache
Memcache and the Datastore
Handling Memcache Errors
Memcache Administration
Chapter 12 : Large Data and the BlobstoreAccepting User Uploads
Using BlobInfo Entities
Serving Blobstore Values
Deleting Blobstore Values
Reading Blobstore Values
A Complete Example
Chapter 13 : Fetching URLs and Web ResourcesFetching URLs in Python
Fetching URLs in Java
Outgoing HTTP Requests
HTTP Over SSL (HTTPS)
Request and Response Sizes
Request Deadlines
Handling Redirects
Response Objects
Chapter 14 : Sending and Receiving Email MessagesSending Email Messages
Receiving Email Messages
Chapter 15 : Sending and Receiving Instant Messages with XMPPInviting a User to Chat
Sending Chat Messages
Receiving Chat Messages
Handling Error Messages
Managing Presence
Chapter 16 : Task Queues and Scheduled TasksConfiguring Task Queues
Enqueuing a Task
Task Parameters
Push Queues
Pull Queues
Transactional Task Enqueueing
Task Chaining
Task Queue Administration
Deferring Work
Scheduled Tasks
Chapter 17 : Optimizing Service CallsCalling Services Asynchronously
Visualizing Calls with AppStats
Chapter 18 : The Django Web Application FrameworkUsing the Bundled Django Library
Creating a Django Project
Hooking It Up to App Engine
Creating a Django App
Using Django Templates
Using Django Forms
The django-nonrel Project
Chapter 19 : Managing Request LogsWriting to the Log
Viewing Recent Logs
Downloading Logs
Logs Retention
Querying Logs from the App
Flushing the Log Buffer
Chapter 20 : Deploying and Managing ApplicationsUploading an Application
Using Versions
Managing Service Configuration
Application Settings
Managing Developers
Quotas and Billing
Getting Help
Colophon[/spoiler]