Working With...
  • Unix Processes
  • TCP Sockets
  • Ruby Threads
  • Downloads

Wwtcps

Introduction →
Your First Socket →
Establishing Connections →
Server Lifecycle →
Client Lifecycle →
Exchanging Data →
Sockets Can Read →
Sockets Can Write →
Buffering →
Our First Client/Server →
Socket Options →
Non-Blocking IO →
Multiplexing Connections →
Nagle's Algorithm →
Framing Messages →
Timeouts →
DNS Lookups →
SSL Sockets →
Urgent Data →
Network Architecture Patterns →
Pattern: Serial →
Pattern: Process per Connection →
Pattern: Thread per Connection →
Pattern: Preforking →
Pattern: Thread Pool →
Pattern: Evented (Reactor) →
Pattern: Hybrids →
Closing Thoughts →