Simple problem: Many client apps need to send data to a server.
By default each client will open a persistent TCP socket connection
to a common IP address:port (10.10.10.10:1234) and write to it (which
the server will save/log, etc.).
My question is, what should be ready to listen at the IP:port? I was
thinking of writing a PHP command-line socket server that listens at
that port. But there will be a potentially huge number of clients
connecting simultaneously (1000s), not transmitting a lot of data per
se, but a lot of connections... Anyway, instead I thought writing a
simple PHP script—say, listener.php—that gets executed by the web
server and enters a socket_read loop until the client terminates the
connection (set_time_limit(0)).
Does this sound like a good way to do it? This way, Apache handles
all the connections, and PHP is instantiated each time, but without
having to fork processes, etc, and without having to do PHP CLI.
Anyway, I've started looking at this, but I'm not quite sure if it's
even possible. I mean, can "something" send a request to Apache, and
continue to write data along that TCP socket? Normally, HTTP requests
include GET or POST for such data, but this is not a a web browser
that's opening the connection.
Hope I'm somewhat clear. Just struggling through some options
here.... Anyway, thanks in advance for any suggestions.
...Rene