iNTERFACEWARE Documentation
Spaces
Apps
Templates
Create
Concepts
All content
Calendars
Space settings
Content
Results will update as you type.
Optimizing Systems
Bottlenecks
Complex Systems
•
System Constraints
•
The Goal
Conversation
•
Trust
Narratives
•
Influence the Narrative
•
No affiliate links giving commissions
•
Follow the conversation
•
Complex Systems Theory
Communication Concepts
Business Concepts
Workspace Concepts
Simplicity Design Concepts
Home Concepts
Law and Accounting Concepts
Computer Concepts
Web Technology Concepts
Security Concepts
GIT concepts
Text Editors
Computer Fundamentals
Debugging Concepts
Number Systems Concepts
Understanding File paths
•
Geometric Growth Functions
Data structure concepts
File I/O Concepts
Build Concepts
Socket Concepts
•
A brief history of sockets
•
Blocking versus non blocking sockets
Event Loop
Blocking vs. Non Blocking Calls
•
What are the core API needs for a socket API to enable non blocking sockets to be implemented?
The socket C10K problem
•
Blocking calls in an event loop thread
Implementing a event loop - how do you handle timers?
Handling large amounts of data with sockets and an event loop
•
Or how do you eat an elephant?
•
What Harry Potter can teach us about large amounts of data and non-blocking calls!
•
How can we solve the problem of how a worker thread can wake up a event loop thread which is listening for events?
TCP/IP is a stream protocol
•
UDP versus TCP
•
Bind Concepts
IpV4 versus Ip6
•
Understanding name lookup - DNS and /etc/hosts file
•
Windows sockets need to be enabled
•
Disabling SIGPIPE
•
The SO_REUSEADDR flag is complicated
•
Disabling the Nagle Algorithm is a good idea
•
If you have an API which sets errno you have better save it!
•
How many ports exist?
•
What is a TCP/IP server?
•
Difficulties with uniqueness of socket handles
Technical Concepts
Quality Concepts
Process Concepts
Optimization Concepts
Computer Anti-patterns
Unit Test Concepts
Coding Techniques
Grid Concepts
Windows Concepts
Character and String Concepts
Memory Concepts
C++ Concepts
Python Concepts
Lua Concepts
Hacking Iguana
Apple Concepts
Information System Concepts
Product X
Consciousness
Human Concepts Overview
•
Further Reading
Our Core Values
Heuristics
Large Language Models
Blogs
Concepts
/
/
Handling large amounts of data with sockets and an event loop
/
Or how do you eat an elephant?
Or how do you eat an elephant?
Eliot Muir
Owned by
Eliot Muir
Last updated:
Jan 14, 2022
1 min read
Loading data...
Open
One bite (byte?) at a time
.
{"serverDuration": 22, "requestCorrelationId": "a4d4e5f536e24e759ef615f0798e4f86"}