2013-12-23 07:53


  • node.js
  • session
  • php
  • symfony

I have a PHP application (with Symfony2) and I need to let my users talk, and other tings, in real time (with socket.IO). Let's focus on the chat mechanism : A logged user can talk with an other logged user (logged with FOSUserBundle in Symfony). When the user sent a message, it must be saved in MySQL and sent in real time to the other user. So the message is linked to two users (a sender and a receiver) in my MySQL database.

So I have two possibilities :

  • I use PHP to store messages :
    • I have an event on the click "submit" and call a PHP url with AJAX
    • If my PHP return "OK" (so he correctly added the message in database), I emit a Socket.IO event -> let doctrine deal with datas and symfony with my user
    • On NodeJS side, I have a listener on this event and I sent the message through Socket.IO with an other event
  • I use only NodeJS :
    • How can I log my user on PHP and NodeJS side ?
    • I need to use a different database for datas in real time ?
    • How can I share my users between NodeJS and PHP ?

I don't know what is the cleanest solution, if someone can help me. Thanks !

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享