Integrating NodeJS Realtime with existing PHP Application
Problem
I have an Existing Php app running on Apache server.
Question, is it possible to embed say Socket.IO Client-side JS by "Proxy-Pass"-ing to NodeJS server?
Say, I save a key-value pair with PHP in DB, and simultaneously send that message to everyone connected to that channel, the value I just saved.
If I was using NodeJS and Socket.IO/Faye I would embed the client-side JS in the pages served by Apache. But essentially that script comes from Proxy-Pass to NodeJS.
Some light on this would be very kind.
Thanks
Solution
There is a similar question here:
Accessing socket.io server via Apache served pages
You can achieve this using Apache, but I think it would be better to either connect to Socket.IO directly or use something better for proxying like HAProxy: HAProxy + WebSocket Disconnection
I would choose HAProxy and use a port such as 4000 for example especially for Socket.IO and port 843 for Flash-WebSockets (Socket.IO will check if WebSockets are available in the browser and if they're not SIO can change the transport to Flash-WebSockets; providing your transport order is WS native, WS Flash, etc): https://gist.github.com/1014904 (check HAProxy's config there for port 843).
The reason for choosing HAProxy would be that I could use multiple processes across multiple machines when I need to handle big traffic, and HAProxy is very good at that.
Discussion
View additional discussion.