Building Scalable Web Sites
By
Cal Henderson
...............................................
Publisher:
O'Reilly
Pub Date:
May 2006
Print ISBN-10:
0-596-10235-6
Print ISBN-13:
978-0-59-610235-7
Pages:
348
Table of Contents
|
Index
Copyright
Preface
Chapter 1. Introduction
Section 1.1. What Is a Web Application?
Section 1.2. How Do You Build Web Applications?
Section 1.3. What Is Architecture?
Section 1.4. How Do I Get Started?
Chapter 2. Web Application Architecture
Section 2.1. Layered Software Architecture
Section 2.2. Layered Technologies
Section 2.3. Software Interface Design
Section 2.4. Getting from A to B
Section 2.5. The Software/Hardware Divide
Section 2.6. Hardware Platforms
Section 2.7. Hardware Platform Growth
Section 2.8. Hardware Redundancy
Section 2.9. Networking
Section 2.10. Languages, Technologies, and Databases
Chapter 3. Development Environments
Section 3.1. The Three Rules
Section 3.2. Use Source Control
Section 3.3. One-Step Build
Section 3.4. Issue Tracking
Section 3.5. Scaling the Development Model
Section 3.6. Coding Standards
Section 3.7. Testing
Chapter 4. i18n, L10n, and Unicode
Section 4.1. Internationalization and Localization
Section 4.2. Unicode in a Nutshell
Section 4.3. Unicode Encodings
Section 4.4. The UTF-8 Encoding
Section 4.5. UTF-8 Web Applications
Section 4.6. Using UTF-8 with PHP
Section 4.7. Using UTF-8 with Other Languages
Section 4.8. Using UTF-8 with MySQL
Section 4.9. Using UTF-8 with Email
Section 4.10. Using UTF-8 with JavaScript
Section 4.11. Using UTF-8 with APIs
Chapter 5. Data Integrity and Security
Section 5.1. Data Integrity Policies
Section 5.2. Good, Valid, and Invalid
Section 5.3. Filtering UTF-8
Section 5.4. Filtering Control Characters
Section 5.5. Filtering HTML
Section 5.6. Cross-Site Scripting (XSS)
Section 5.7. SQL Injection Attacks
Chapter 6. Email
Section 6.1. Receiving Email
Section 6.2. Injecting Email into Your Application
Section 6.3. The MIME Format
Section 6.4. Parsing Simple MIME Emails
Section 6.5. Parsing UU Encoded Attachments
Section 6.6. TNEF Attachments
Section 6.7. Wireless Carriers Hate You
Section 6.8. Character Sets and Encodings
Section 6.9. Recognizing Your Users
Section 6.10. Unit Testing
Chapter 7. Remote Services
Section 7.1. Remote Services Club
Section 7.2. Sockets
Section 7.3. Using HTTP
Section 7.4. Remote Services Redundancy
Section 7.5. Asynchronous Systems
Section 7.6. Exchanging XML
Section 7.7. Lightweight Protocols
Chapter 8. Bottlenecks
Section 8.1. Identifying Bottlenecks
Section 8.2. External Services and Black Boxes
Chapter 9. Scaling Web Applications
Section 9.1. The Scaling Myth
Section 9.2. Scaling the Network
Section 9.3. Load Balancing
Section 9.4. Scaling MySQL
Section 9.5. MyISAM
Section 9.6. MySQL Replication
Section 9.7. Database Partitioning
Section 9.8. Scaling Large Database
Section 9.9. Scaling Storage
Chapter 10. Statistics, Monitoring, and Alerting
Section 10.1. Tracking Web Statistics
Section 10.2. Application Monitoring
Section 10.3. Alerting
Chapter 11. APIs
Section 11.1. Data Feeds
Section 11.2. Mobile Content
Section 11.3. Web Services
Section 11.4. API Transports
Section 11.5. API Abuse
Section 11.6. Authentication
Section 11.7. The Future
About the Author
Colophon
Colophon
Index