Issue link: https://read.uberflip.com/i/1146286
Table of Contents | ix 8. Rule 8: Make JavaScript and CSS External . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Inline vs. External 55 Typical Results in the Field 58 Home Pages 58 The Best of Both Worlds 59 9. Rule 9: Reduce DNS Lookups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 DNS Caching and TTLs 63 The Browser's Perspective 66 Reducing DNS Lookups 68 10. Rule 10: Minify JavaScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Minification 69 Obfuscation 70 The Savings 70 Examples 72 Icing on the Cake 73 11. Rule 11: Avoid Redirects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 Types of Redirects 76 How Redirects Hurt Performance 77 Alternatives to Redirects 79 12. Rule 12: Remove Duplicate Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 Duplicate Scripts—They Happen 85 Duplicate Scripts Hurt Performance 86 Avoiding Duplicate Scripts 87 13. Rule 13: Configure ETags . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 What's an ETag? 89 The Problem with ETags 91 ETags: Use 'Em or Lose 'Em 93 ETags in the Real World 94 14. Rule 14: Make Ajax Cacheable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 Web 2.0, DHTML, and Ajax 96 Asynchronous = Instantaneous? 98 Optimizing Ajax Requests 99 Caching Ajax in the Real World 99

