Twisted Network Programming Essentials
O'Reilly Media, Inc, USA (Verlag)
978-1-4493-2611-1 (ISBN)
With this introductory guide, you’ll learn the key concepts and design patterns to build event-driven client and server applications for many popular networking protocols. You’ll also learn the tools to build new protocols using Twisted’s primitives.
Start by building basic TCP clients and servers, and then focus on deploying production-grade applications with the Twisted Application infrastructure. Along the way, you can play with and extend examples of common tasks you’ll face when building network applications. If you’re familiar with Python, you’re ready for Twisted.
- Learn the core components of Twisted servers and clients
- Write asynchronous code with the Deferred API
- Construct HTTP servers with Twisted’s high-level web APIs
- Use the Agent API to develop flexible web clients
- Configure and deploy Twisted services in a robust and standardized fashion
- Access databases using Twisted’s nonblocking interface
- Add common server components: logging, authentication, threads and processes, and testing
- Explore ways to build clients and servers for IRC, popular mail protocols, and SSH
Jessica McKellar is a software engineer from Cambridge, MA. She enjoys the Internet, networking, low-level systems engineering, and contributing to and helping other people contribute to open source software. She is a Twisted maintainer, organizer for the Boston Python user group, and a local STEM volunteer.
Abe Fettig is a software developer and maintainer of Hep, an open source message server that makes it possible to transparently route information between RSS, email, weblogs, and web services. He speaks frequently at software conferences including PyCon and lives in Portland, Maine with his wife, Hannah.
An Introduction to Twisted
Chapter 1 Getting Started
Installing Twisted
Installing from Source
Testing Your Installation
Using the Twisted Documentation
Finding Answers to Your Questions
Chapter 2 Building Basic Clients and Servers
A TCP Echo Server and Client
Event-Driven Programming
The Reactor
Transports
Protocols
A TCP Quote Server and Client
Protocol State Machines
More Practice and Next Steps
Chapter 3 Writing Asynchronous Code with Deferreds
What Deferreds Do and Don’t Do
The Structure of a Deferred Object
Callback Chains and Using Deferreds in the Reactor
Practice: What Do These Deferred Chains Do?
The Truth About addCallbacks
Key Facts About Deferreds
Summary of the Deferred API
More Practice and Next Steps
Chapter 4 Web Servers
Responding to HTTP Requests: A Low-Level Review
Handling GET Requests
Handling POST Requests
Asynchronous Responses
More Practice and Next Steps
Chapter 5 Web Clients
Basic HTTP Resource Retrieval
Agent
More Practice and Next Steps
Building Production-Grade Twisted Services
Chapter 6 Deploying Twisted Applications
The Twisted Application Infrastructure
More twistd Examples
More Practice and Next Steps
Chapter 7 Logging
Basic In-Application Logging
twistd Logging
Custom Loggers
Key Facts and Caveats About Logging
Chapter 8 Databases
Nonblocking Database Queries
More Practice and Next Steps
Chapter 9 Authentication
The Components of Twisted Cred
Twisted Cred: An Example
Credentials Checkers
Authentication in Twisted Applications
More Practice and Next Steps
Chapter 10 Threads and Subprocesses
Threads
Subprocesses
More Practice and Next Steps
Chapter 11 Testing
Writing and Running Twisted Unit Tests with Trial
Testing Protocols
Tests and the Reactor
More Practice and Next Steps
More Protocols and More Practice
Chapter 12 Twisted Words
IRC Clients
IRC Servers
More Practice and Next Steps
Chapter 13 Twisted Mail
SMTP Clients and Servers
IMAP Clients and Servers
POP3 Clients and Servers
More Practice and Next Steps
Chapter 14 SSH
SSH Servers
Using Public Keys for Authentication
Providing an Administrative Python Shell
Running Commands on a Remote Server
More Practice and Next Steps
Chapter 15 The End
Contributing to Twisted
Colophon
Erscheint lt. Verlag | 30.4.2013 |
---|---|
Zusatzinfo | illustrations |
Verlagsort | Sebastopol |
Sprache | englisch |
Maße | 178 x 233 mm |
Gewicht | 327 g |
Einbandart | kartoniert |
Themenwelt | Mathematik / Informatik ► Informatik ► Netzwerke |
Informatik ► Programmiersprachen / -werkzeuge ► Python | |
ISBN-10 | 1-4493-2611-0 / 1449326110 |
ISBN-13 | 978-1-4493-2611-1 / 9781449326111 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich