Für eine automatische Verarbeitung hat das HTTP zu viel Overload. Hier reicht es sicher, auf eine TCP-Verbdindung zu warten (was anderes macht das Webserver Beispiel ja auch nicht) und dann direkt einzelne Kommando-Bytes in den TCP-Stream zu schreiben. Darauf kann man dann ebenso per client.write() antworten, was eine einfach bidirektionale Kommunikation ermöglicht.
Wenn es nicht WLAN sein muss, kannst Du sicher auch jeden Arudino mit einem 433MHz Sender/Empfänger Modul ausstatten, das dürfte die Kosten drastisch reduzieren.