Can ejabberd chat server be integrated with scalable and fast server technologies like node.js/tornado/socket.io to implement an in-browser chat?
In that case, ejabberd server might run at the backend while front end can use node.js/socket.io etc. to communicate with client browsers. All the chat messages will need to be routed through the ejabberd server. Does all this make sense and is it scalable enough as compared to directly using ejabberd in the traditional way?
I do not see the benefit in adding a component in your architecture.
ejabberd and XMPP in general are playing well with web technologies and Javascript based client.
There is two major technologies you can use:
Javascript XMPP libraries usually supports both Websockets and BOSH. You can for example have a look at Strophe to implement your Javascript web client.
Wny not use an existing Candy client (http://candy-chat.github.com/candy/) that runs inside a browser, against backend ejabberd server?