Programming Google App Engine
Seiten
2012
|
2 Rev ed
O'Reilly Media, Inc, USA (Verlag)
978-1-4493-9826-2 (ISBN)
O'Reilly Media, Inc, USA (Verlag)
978-1-4493-9826-2 (ISBN)
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.
As a cloud computing service, Google App Engine does more than provide access to a large system of servers. It also offers you a simple model for building applications that scale automatically to accommodate millions of users. With this updated edition of Programming Google App Engine, you'll get expert practical guidance that will help you make the best use of this powerful platform. Google engineer Dan Sanderson shows you how to design your applications for scalability, including ways to perform common development tasks using App Engine's APIs and scalable services. You'll learn about App Engine's application server architecture, runtime environments, and scalable datastore for distributing data, as well as techniques for optimizing your application. App Engine offers nearly unlimited computing power, and this book provides clear and concise instructions for getting the most from it right from the source. It's ideal for intermediate and advanced web developers familiar with Java or Python.
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
As a cloud computing service, Google App Engine does more than provide access to a large system of servers. It also offers you a simple model for building applications that scale automatically to accommodate millions of users. With this updated edition of Programming Google App Engine, you'll get expert practical guidance that will help you make the best use of this powerful platform. Google engineer Dan Sanderson shows you how to design your applications for scalability, including ways to perform common development tasks using App Engine's APIs and scalable services. You'll learn about App Engine's application server architecture, runtime environments, and scalable datastore for distributing data, as well as techniques for optimizing your application. App Engine offers nearly unlimited computing power, and this book provides clear and concise instructions for getting the most from it right from the source. It's ideal for intermediate and advanced web developers familiar with Java or Python.
- Discover the differences between traditional web development and development with App Engine
- Learn the details of App Engine's Python and Java runtime environments
- Understand how App Engine handles web requests and executes application code
- Learn how to use App Engine's scalable datastore, including queries and indexes, transactions, and data modeling
- Use task queues to parallelize and distribute work across the infrastructure
- Deploy and manage applications with ease
Dan Sanderson is a technical writer and software engineer at Google Inc. He has worked in the web industry for over 10 years as a software engineer and technical writer for Google, Amazon.com, and the Walt Disney Internet Group. He lives in Seattle, Washington. For more information about Dan, visit his website at http://www.dansanderson.com.
Chapter 1 Introducing Google App Engine
- The 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
- Setting Up the SDK
- Developing the Application
- Registering the Application
- Uploading the Application
- Introducing the Administration Console
- The 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
- The 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
- Entities, 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
- Queries 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
- Entities 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
- Inspecting the Datastore
- Managing Indexes
- The Datastore Admin Panel
- Accessing Metadata from the App
- Remote Controls
- Models and Properties
- Property Declarations
- Modeling Relationships
- Model Inheritance
- Queries and PolyModels
- Creating Your Own Property Classes
- Setting Up JPA
- Entities and Keys
- Entity Properties
- Embedded Objects
- Saving, Fetching, and Deleting Objects
- Transactions in JPA
- Queries and JPQL
- Relationships
- For More Information
- Calling 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
- Accepting User Uploads
- Using BlobInfo Entities
- Serving Blobstore Values
- Deleting Blobstore Values
- Reading Blobstore Values
- A Complete Example
- Fetching URLs in Python
- Fetching URLs in Java
- Outgoing HTTP Requests
- HTTP Over SSL (HTTPS)
- Request and Response Sizes
- Request Deadlines
- Handling Redirects
- Response Objects
- Sending Email Messages
- Receiving Email Messages
- Inviting a User to Chat
- Sending Chat Messages
- Receiving Chat Messages
- Handling Error Messages
- Managing Presence
- Configuring Task Queues
- Enqueuing a Task
- Task Parameters
- Push Queues
- Pull Queues
- Transactional Task Enqueueing
- Task Chaining
- Task Queue Administration
- Deferring Work
- Scheduled Tasks
- Calling Services Asynchronously
- Visualizing Calls with AppStats
- Using 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
- Writing to the Log
- Viewing Recent Logs
- Downloading Logs
- Logs Retention
- Querying Logs from the App
- Flushing the Log Buffer
- Uploading an Application
- Using Versions
- Managing Service Configuration
- Application Settings
- Managing Developers
- Quotas and Billing
- Getting Help
Erscheint lt. Verlag | 20.11.2012 |
---|---|
Zusatzinfo | Illustrations |
Verlagsort | Sebastopol |
Sprache | englisch |
Maße | 178 x 233 mm |
Gewicht | 870 g |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► Java |
Informatik ► Programmiersprachen / -werkzeuge ► Python | |
Informatik ► Web / Internet ► Web Design / Usability | |
ISBN-10 | 1-4493-9826-X / 144939826X |
ISBN-13 | 978-1-4493-9826-2 / 9781449398262 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
Mehr entdecken
aus dem Bereich
aus dem Bereich
mit über 150 Workouts in Java und Python
Buch (2023)
Carl Hanser (Verlag)
CHF 41,95
Einführung, Ausbildung, Praxis
Buch | Hardcover (2023)
Rheinwerk (Verlag)
CHF 69,85