当前位置:首页 > 工业技术
Google App Engine编程  英文
Google App Engine编程  英文

Google App Engine编程 英文PDF电子书下载

工业技术

  • 电子书积分:16 积分如何计算积分?
  • 作 者:DANSANDERSON著
  • 出 版 社:南京:东南大学出版社
  • 出版年份:2013
  • ISBN:9787564141806
  • 页数:510 页
图书介绍:Google App Engine(谷歌应用引擎)使得创建Web应用变得简单易行。它仅需少量的投资即可如仅仅服务数百用户那样灵巧地服务于百万量级的用户。在《Google App Engine编程》中,Google工程师Dan Sanderson提供了专业的实用指南,你可以学习到如何运用App Engine的可扩展服务和简单的开发模型在Google的强大平台上进行设计和开发应用。
《Google App Engine编程 英文》目录
标签:编程

1.Introducing Google App Engine 1

The Runtime Environment 1

The Static File Servers 4

The Datastore 5

Entities and properties 5

Queries and Indexes 6

Transactions 7

The Services 8

Namespaces 10

Google Accounts,OpenID,and OAuth 10

Task Queues and Cron Jobs 11

Developer Tools 12

The Administration Console 13

Things App Engine Doesn't Do...Yet 14

Getting Started 15

2.CreatinganApplication 17

Setting Up the SDK 17

Installing the Python SDK 18

Installing the Java SDK 22

Developing the Application 27

The User Preferences Pattern 27

Developing a Python App 29

Developing a Java App 44

The Development Console 61

Registering the Application 63

The Application ID and Title 64

Setting Up a Domain Name 65

Google Apps and Authentication 67

Uploading the Application 68

Using Two-Step Verification 69

Introducing the Administration Console 70

3.Configuring an Application 73

The App Engine Architecture 74

Configuring a Python App 76

Runtime Versions 77

Configuring aJava App 77

Domain Names 79

App IDs and Versions 81

App IDs and Versions in Python 82

App IDs and Versions in Java 82

Multithreading 82

Request Handlers 83

Request Handlers in Python 83

Request Handlers in Java 85

Static Files and Resource Files 86

Static Files in Python 87

Static Files in Java 90

Secure Connections 92

Secure Connections in Python 93

Secure Connections in Java 94

Authorization with Google Accounts 95

Authorization in Python 96

Authorization in Java 96

Environment Variables 97

Inbound Services 97

Custom Error Responses 98

Administration Console Custom Pages 99

More Python Features 100

Python Libraries 100

Built-in Handlers 102

Includes 103

Java Servlet Sessions 104

4.RequestHandlersandInstances 107

The Runtime Environment 108

The Sandbox 109

Quotas and Limits 109

The Python Runtime Environment 114

The Java Runtime Environment 116

The Request Handler Abstraction 117

Introducing Instances 118

Request Scheduling and Pending Latency 122

Warm-up Requests 123

Resident Instances 124

The Instances Console 125

Instance Hours and Billing 126

Instance Classes 127

5.Datastore Entities 129

Entities,Keys,and Properties 130

Introducing the Python Datastore API 131

Introducing the Java Datastore API 134

Property Values 137

Strings,Text,and Blobs 138

Unset Versus the Null Value 139

Multivalued Properties 140

Keys and Key Objects 141

Using Entities 143

Getting Entities Using Keys 143

Inspecting Entity Objects 144

Saving Entities 145

Deleting Entities 146

Allocating System IDs 146

The Development Server and the Datastore 148

6.Datastore Queries 151

Queries and Kinds 152

Query Results and Keys 152

GQL 153

The Python Query API 156

The Query Class 156

GQL in Python 158

Retrieving Results 159

Keys-Only Queries 161

The Java Query API 162

Building the Query 163

Fetching Results with PreparedQuery 164

Keys-Only Queries in Java 166

Introducing Indexes 166

Automatic Indexes and Simple Queries 168

All Entities of a Kind 169

One Equality Filter 169

Greater-Than and Less-Than Filters 170

One Sort Order 171

Queries on Keys 173

Kindless Queries 174

Custom Indexes and Complex Queries 175

Multiple Sort Orders 175

Filters on Multiple Properties 176

Multiple Equality Filters 179

Not-Equal and IN Filters 181

Unset and Nonindexed Properties 182

Sort Orders and Value Types 183

Queries and Multivalued Properties 185

A Simple Example 185

MVPs in Python 186

MVPs in Java 187

MVPs and Equality Filters 187

MVPs and Inequality Filters 189

MVPs and Sort Orders 190

Exploding Indexes 191

Query Cursors 192

Cursors in Python 195

Cursors in Java 196

Projection Queries 197

Projection Queries in Python 199

Projection Queries in Java 199

Configuring Indexes 200

Index Configuration for Python 201

Index Configuration for Java 201

7.Datastore Transactions 203

Entities and Entity Groups 205

Keys,Paths,and Ancestors 206

Ancestor Queries 208

What Can Happen in a Transaction 210

Transactional Reads 210

Eventually Consistent Reads 211

Transactions in Python 212

Transactions in Java 214

How Entities Are Updated 219

How Entities Are Read 222

Batch Updates 222

How Indexes Are Updated 223

Cross-Group Transactions 224

8.DatastoreAdministration 227

Inspecting the Datastore 227

Managing Indexes 230

The Datastore Admin Panel 232

Accessing Metadata from the App 234

Querying Statistics 234

Querying Metadata 235

Index Status and Queries 236

Entity Group Versions 238

Remote Controls 239

Setting Up the Remote API for Python 240

Setting Up the Remote API for Java 240

Using the Remote Shell Tool 241

Using the Remote API from a Script 242

9.Data Modeling with Python 245

Models and Properties 246

Property Declarations 247

Property Value Types 248

Property Validation 249

Nonindexed Properties 251

Automatic Values 251

List Properties 253

Models and Schema Migration 254

Modeling Relationships 254

One-to-Many Relationships 257

One-to-One Relationships 257

Many-to-Many Relationships 258

Model Inheritance 260

Queries and PolyModels 261

Creating Your Own Property Classes 262

Validating Property Values 263

Marshaling Value Types 264

Customizing Default Values 266

Accepting Arguments 267

10.The Java Persistence API 269

Setting UP JPA 270

Entities and Keys 271

Entity Properties 274

Embedded Objects 275

Saving,Fetching,and Deleting Objects 276

Transactions in JPA 278

Queries and JPQL 279

Relationships 282

For More Information 287

11.The Memory Cache 289

Calling Memcache from Python 290

Calling Memcache from Java 291

Keys and Values 292

Setting Values 293

Setting Values that Expire 293

Adding and Replacing Values 294

Getting Values 295

Deleting Values 295

Locking a Deleted Key 295

Atomic Increment and Decrement 296

Compare and Set 297

Batching Calls to Memcache 299

Memcache Batch Calls in Python 299

Memcache Batch Calls in Java 301

Memcache and the Datastore 302

Handling Memcache Errors 303

Memcache Administration 303

Cache Statistics 305

Flushing the Memcache 305

12.Large Data and the Blobstore 307

Accepting User Uploads 308

Web Forms and MIME Multipart Data 310

Blobstore Upload Requests 312

Handling Uploads in Python 313

Handling Uploads in Java 315

Using BlobInfo Entities 316

Using BlobInfo Entities in Python 317

Using BlobInfo Entities in Java 319

Serving Blobstore Values 320

Serving Blobstore Values in Python 321

Serving Blobstore Values in Java 322

Deleting Blobstore Values 323

Reading Blobstore Values 324

Fetching Byte Ranges 324

Reading Values with Streams 325

A Complete Example 327

A Blobstore Example in Python 328

A Blobstore Example in Java 332

13.FetchingURLsandWebResources 339

Fetching URLs in Python 341

Fetching URLs in Java 342

Outgoing HTTP Requests 344

The URL 344

The HTTP Method and Payload 345

Request Headers 346

HTTP Over SSL(HTTPS) 346

Request and Response Sizes 347

Request Deadlines 348

Handling Redirects 348

Response Objects 349

14.Sending and Receiving Email Messages 351

Sending Email Messages 352

Sending Email from the Development Server 353

Sender Addresses 354

Recipients 356

Attachments 356

Sending Emailin Python 357

Sending Emailin Java 360

Receiving Email Messages 362

Receiving Emailin Python 363

Receiving Email in Java 365

15.Sending and Receiving Instant Messages with XMPP 367

Inviting a User to Chat 369

Sending Invitations in Python 369

Sending Invitations in Java 369

Sending Chat Messages 370

Sending Chat Messages in Python 371

Sending Chat Messages in Java 371

Receiving Chat Messages 373

Receiving Chat Messages in Python 374

Receiving Chat Messages in Java 376

Handling Error Messages 377

Managing Presence 378

Managing Subscriptions 379

Managing Presence Updates 382

Probing for Presence 386

Checking a Google Talk User's Status 388

16.TaskQueuesand ScheduledTasks 391

Configuring Task Queues 393

Enqueuing a Task 395

Enqueuing a Task in Python 395

Enqueuing a Task in Java 397

Task Parameters 398

Payloads 398

Task Names 399

Countdowns and ETAs 401

Push Queues 402

Task Requests 402

Processing Rates and Token Buckets 404

Retrying Push Tasks 405

Pull Queues 407

Enqueuing Tasks to Pull Queues 409

Leasing and Deleting Tasks 409

Retrying Pull Queue Tasks 410

Transactional Task Enqueueing 411

Transactional Tasks in Python 413

Transactional Tasks in Java 414

Task Chaining 415

Task Queue Administration 420

Deferring Work 420

Deferring Work in Python 421

Deferring Work in Java 422

Scheduled Tasks 423

Configuring Scheduled Tasks 425

Specifying Schedules 426

17.Optimizing Service Calls 429

Calling Services Asynchronously 430

Asynchronous Calls in Python 432

Asynchronous Calls in Java 440

Visualizing Calls with AppStats 442

Installing AppStats for Python 444

Installing AppStats for Java 446

Using the AppStats Console 447

18.The Django Web Application Framework 451

Using the Bundled Django Library 453

Creating a Django Project 454

Hooking It Up to App Engine 455

Creating a Django App 457

Using Django Templates 458

Using Django Forms 460

The django-nonrel Project 465

19.Managing Request Logs 467

Writing to the Log 468

Logging in Python 468

Logging inJava 469

Viewing Recent Logs 471

Downloading Logs 473

Logs Retention 474

Querying Logs from the App 474

Querying Logs in Python 475

Querying Logs in Java 476

Flushing the Log Buffer 478

20.Deploying and Managing Applications 481

Uploading an Application 482

Using Versions 483

Managing Service Configuration 485

Application Settings 485

Managing Developers 486

Quotas and Billing 487

Getting Help 488

Index 491

相关图书
作者其它书籍
返回顶部