It took a day to reread the book, the book is not deep, popular reading, said very much. Let's take a note:
1. Schema mode
Tiering, partitioning, distributed (applications and services, static resources, data and storage, distributed computing), clustering, caching (CDN, reverse proxy, local cache, distributed cache), async, redundancy, automation, security
2. Core elements
A. Performance
Metrics: Response time, concurrency count, throughput, performance counters
Testing: Performance testing, load testing, stress testing, stability testing
Optimization: 1 Front end: Browser: Reduce HTTP requests, use browser cache, enable compression, CSS at the top JS at the bottom, reduce cookie transfer, CDN, reverse proxy
2 servers: Distributed cache, asynchronous operations, using clusters, code optimization
3 Storage optimization: RAID VS HDFS
B. Availability
High-availability applications: Stateless failover, session management of the cluster (session copy, session binding, cookie recording session,session server)
Highly Available services: Hierarchical management, timeout settings, asynchronous invocation, service demotion, power-reference design
High-availability data: Caps, data backup, fail-over
C. Flexibility
Load balancing: HTTP redirect, DNS domain name resolution, reverse proxy, IP, Data Link layer (MAC address, LVS). Algorithm: Polling, weighted polling, random, minimum connection, source address hash.
Distributed cache consistency hash, relational database Cobar,nosql natural
D. Extensibility
Distributed Message Queuing
Distributed services
E. Security
XSS (reflective, persistent)-"filter, HttpOnly
SQL injection-"filter, bind variable
CSRF Cross-site forgery-"form token, verification code, Referer check
White list better than blacklist
Reread large web site technology architecture