 <p>You have several options, and it really depends on what you are trying to get the system to do. </p> <ul> <li>fork child processes, and interface using connections their stdin/stdout pipes.</li> <li>create a named pipe on the file system, like /tmp/mysql.sock. This is basically using sockets to communicate cross process.</li> <li>Setup a message broker. I'd recommend giving <strong>ActiveMQ</strong> a try, and using the <a href="http://stomp.codehaus.org/Perl" rel="nofollow noreferrer">Stomp client for Perl</a>. This is probably your most scalable solution.</li> </ul>