Learning HTTP/2. A Practical Guide for Beginners - Helion
ISBN: 978-14-919-6260-2
stron: 156, Format: ebook
Data wydania: 2017-05-15
Księgarnia: Helion
Cena książki: 126,65 zł (poprzednio: 147,27 zł)
Oszczędzasz: 14% (-20,62 zł)
What can your organization gain by adopting HTTP/2? How about faster, simpler, and more robust websites and applications? This practical guide demonstrates how the latest version of the Hypertext Transfer Protocol can dramatically improve website and application performance. You’ll take a deep dive into HTTP/2 details, and learn how this updated protocol is changing the web landscape.
HTTP/1.1 has been the primary means of communicating data across the web for the past 20 years, but the level of interaction today has gone well beyond what people envisioned in 1997. With this book, authors Stephen Ludin and Javier Garza show you how HTTP/2 will help speed the execution of modern sites and applications.
With this book, you’ll explore:
- Performance challenges that led to the HTTP upgrade
- HTTP/2 in a nutshell, including benefits and transition methods
- Existing best practices and hacks to improve web performance
- HTTP/2 support for browsers, servers, proxies, and content delivery networks
- How the performance of sites using HTTP/2 compares to their HTTP/1.1 experience
- HTTP/2’s effect on specific issues such as latency, packet loss, and Time to First Byte (TTFB)
Osoby które kupowały "Learning HTTP/2. A Practical Guide for Beginners", wybierały także:
- Atak na sieć okiem hakera. Wykrywanie i eksploatacja luk w zabezpieczeniach sieci 87,41 zł, (48,95 zł -44%)
- TCP/IP w 24 godziny. Wydanie VI 116,88 zł, (65,45 zł -44%)
- TCP/IP od środka. Protokoły. Wydanie II 126,70 zł, (70,95 zł -44%)
- Atak na sieć okiem hakera. Wykrywanie i eksploatacja luk w zabezpieczeniach sieci 88,98 zł, (57,84 zł -35%)
- TCP/IP w 24 godziny. Wydanie VI 119,00 zł, (77,35 zł -35%)
Spis treści
Learning HTTP/2. A Practical Guide for Beginners eBook -- spis treści
- Preface
- Who Should Read This Book
- What This Book Isnt
- Recommended Resources
- Conventions Used in This Book
- Using Code Examples
- OReilly Safari
- How to Contact Us
- Acknowledgments
- Javier Garza
- Stephen Ludin
- Foreword
- 1. The Evolution of HTTP
- HTTP/0.9 and 1.0
- HTTP/1.1
- Beyond 1.1
- SPDY
- HTTP/2
- 2. HTTP/2 Quick Start
- Up and Running
- Get a Certificate
- Use an Online Generator
- Self Signed
- Lets Encrypt
- Get and Run Your First HTTP/2 Server
- Pick a Browser
- 3. How and Why We Hack the Web
- Performance Challenges Today
- The Anatomy of a Web Page Request
- Critical Performance
- The Problems with HTTP/1
- Head of line blocking
- Inefficient use of TCP
- Fat message headers
- Limited priorities
- Third-party objects
- Web Performance Techniques
- Best Practices for Web Performance
- Optimize DNS lookups
- Optimize TCP connections
- Avoid redirects
- Cache on the client
- Cache at the edge
- Conditional caching
- Compression and minification
- Avoid blocking CSS/JS
- Optimize images
- Anti-Patterns
- Spriting and resource consolidation/inlining
- Sharding
- Cookie-less domains
- Best Practices for Web Performance
- Summary
- Performance Challenges Today
- 4. Transition to HTTP/2
- Browser Support
- Moving to TLS
- Undoing HTTP 1.1 Optimizations
- Third Parties
- Supporting Older Clients
- Summary
- 5. The HTTP/2 Protocol
- Layers of HTTP/2
- The Connection
- Frames
- Streams
- Messages
- Flow Control
- Priority
- Server Push
- Pushing an Object
- Choosing What to Push
- Header Compression (HPACK)
- On the Wire
- A Simple GET
- Summary
- 6. HTTP/2 Performance
- Client Implementations
- Latency
- Packet Loss
- Server Push
- Time to First Byte (TTFB)
- Third Parties
- HTTP/2 Anti-Patterns
- Domain Sharding
- Inlining
- Concatenating
- Cookie-less Domains
- Spriting
- Prefetch
- Real-World Performance
- Performance Measurement Methodology
- Study 1: www.facebook.com
- Study 2: www.yahoo.com
- Summary
- 7. HTTP/2 Implementations
- Desktop Web Browsers
- TLS Only
- Disabling HTTP/2
- Support for HTTP/2 Server Push
- Connection Coalescing
- HTTP/2 Debugging Tools
- Beta Channel
- Mobile
- Mobile App Support
- Servers, Proxies, and Caches
- Content Delivery Networks (CDNs)
- Summary
- Desktop Web Browsers
- 8. Debugging h2
- Web Browser Developer Tools
- Chrome Developer Tools
- Net internals
- Server Push visualization
- Chrome session key logging
- Firefox Developer Tools
- Logging HTTP sessions
- Firefox session key logging
- Debugging h2 on iOS Using Charles Proxy
- iOS Simulators
- iOS devices
- Debugging h2 on Android
- Chrome Developer Tools
- WebPagetest
- OpenSSL
- OpenSSL Commands
- nghttp2
- Using nghttp
- curl
- Using curl
- Measuring page load times
- Using curl
- h2i
- Wireshark
- Summary
- Web Browser Developer Tools
- 9. What Is Next?
- TCP or UDP?
- QUIC
- TLS 1.3
- HTTP/3?
- Summary
- A. HTTP/2 Frames
- The Frame Header
- DATA
- DATA Frame Fields
- DATA Frame Flags
- HEADERS
- HEADERS Frame Fields
- HEADERS Frame Flags
- PRIORITY
- PRIORITY Frame Fields
- RST_STREAM
- SETTINGS
- SETTINGS Parameters
- PUSH_PROMISE
- PUSH_PROMISE Frame Fields
- PUSH_PROMISE Frame Flags
- PING
- GOAWAY
- GOAWAY Frame Fields
- WINDOW_UPDATE
- WINDOW_UPDATE Frame Fields
- CONTINUATION
- CONTINUATION Frame Fields
- CONTINUATION Frame Flags
- B. Tools Reference
- Tools
- Browsers
- Servers, Proxies, and Caches
- Index