The Transmission Control Protocol (TCP) provides the backbone for HTTP communications. With TCP, we can open up interfaces between processes running on separate server hosts and remotely communicate between processes with less overhead and fewer complexities than HTTP.
Node provides us with the
net module to create TCP interfaces. When it comes to scaling, reliability, load balancing, synchronization, or real-time social communications, TCP is a fundamental element.
In this recipe, we're going to demonstrate the sort of foundation needed to communicate between processes over a network by setting up two TCP servers that can talk to each other as well as a remote TCP client that utilizes two-way communications.