На основе каких технологий Вы делаете систему мгновенных сообщений?
В твоей архитектуре нет выделенной очереди сообщений типа RabbitMQ или ее заменителя умного программируемого мегакэша, типа в Tarantool
И, да, я бы писал на Go
Добавьте фронтэнд фреймворк какой типа Vue или React. Ну и раз уже есть нода, то зачем вам PHP?