digraph { rankdir="LR"; bgcolor="transparent"; worker1[label="worker"]; worker2[label="worker"]; mgr[label="manager"]; sock[label="transport socket"]; server[label="web server"]; mgr -> worker1[label="spawn (3)"; style="dashed"]; mgr -> worker2[label="spawn (2)"; style="dashed"]; mgr -> sock[label="listen (1)"; style="dashed"]; server -> sock[label="FastCGI (4)"]; sock -> worker1[label="FastCGI (5)"]; sock -> worker2[label="FastCGI (6)"]; }