Мой сервер не подружился с socket.io, но говорят это уже проверенный инструмент(Node.js идеально). А использовал я нативный и самый обыкновенный js waebsocket. При mounted() инициализировал $store.state.ws через actions в vuex(this.$store.dispatch('setWS', 'ws://blahblah/')) и далее использовал обычные геттер от вебсокетта. Через .send('') отправлял, а через .onmessage(data){} получал данные. Навешивал watcher на геттеры и вуаля) Честно признаюсь, это гемор, если использовать в больших объемах, а если нужны частные решения, то очень ок)