TCP/IP servers in C
My attempt to implement code at https://github.com/rspivak/csdesign in C.
-
TCP iterative server (iterative)
-
TCP Concurrent Server, One Child per Client (con_fork)
-
TCP Concurrent Server, I/O Multiplexing (con_select)
-
TCP Concurrent Server, I/O Multiplexing (con_poll)
-
TCP Preforked Server, Children Call (con_accept)
-
TCP Concurrent Server, One Thread per Client (con_thread)
-
TCP Prethreaded Server, Pool of Threads (con_thread_pool)
-
TCP Concurrent Server, I/O Multiplexing (con_epoll)
-
TCP client (client)
TODO
-
Refactor common code
-
Modify makfile to build to a common folder also
(a) make debug builds (b) Valgrind (c) Electric Fence
-
Install and setup daemon tools
-
Modify the data transaxtion as follows
(a) Clients request images (b) Client identifies which image it wants (c) Server reads the imag from a file on disk
-
Implement code to measure performance
-
RST Example
-
Thundering herd demonstration
-
TCP_CORK, Example
-
Documentation for every example
-
Setup to start daily nigthly builds and tests and capture metrics.
-
Publish performance metrics in a web page (with history to see improvements over time)