socket.io在egg+vue中的使用

首先说明一下什么是socket.io,它和websocketAjax的区别在哪里。这里就不讲理论和运行机制了(我怕误人子弟…),只说一下我的理解。(socket.io/socketIO/socket有时候称呼的很乱,我不太清楚有没有具体的区别和特殊的含义,我习惯叫socket.io

  1. socket.iowebsocketwebsocket是一种客户端和服务器之间双向实时通信技术,是HTML5的新协议规范。websocket在建立握手连接时,数据是通过HTTP协议传输的,但是在TCP连接建立后,真正的数据传输阶段则不需要HTTP协议的参与。它讲究是随时随地的双向通信,应用场景包括客户端需要展示动态数据等。socket.io则是为了兼容不同的浏览器,在websocket上面封装了一层。
  2. socket.ioAjaxAjax是单向的,即客户端通过HTTP协议和服务器单向通信,流程就是客户端发出请求,服务器做出相应。 socket.io是双向的随时随地的通信,只是用一次HTTP协议建立连接TCP连接后,就不在使用HTTP协议了。优点也很明显节省带宽(HTTP数据包头本身的字节量较大)和服务器资源。

其他的详细介绍网上有很多就不在说了,网上说的千奇百怪的我就不贴网址了。下面说一下socket.

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要实现nginx配置node socket.io vue的负载均衡,需要先安装nginx和node.js以及socket.io。 以下是简单的步骤: 1. 安装nginx 使用以下命令安装nginx: ``` sudo apt-get update sudo apt-get install nginx ``` 2. 配置nginx 在 /etc/nginx/conf.d/ 目录下创建一个新的配置文件,例如 socketio.conf,将以下内容粘贴到文件: ``` upstream socketio_backend { ip_hash; server node1:3000; server node2:3000; } server { listen 80; server_name yourdomain.com; location / { proxy_pass http://socketio_backend; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } } ``` 这个配置文件设置了一个名为 socketio_backend 的负载均衡器,它将请求转发到两个不同的Node.js服务器,分别是 node1 和 node2,它们都运行在3000端口上。 3. 安装Node.js和socket.io 在 node1 和 node2 服务器上安装 Node.js 和 socket.io使用以下命令: ``` sudo apt-get update sudo apt-get install nodejs sudo apt-get install npm sudo npm install socket.io ``` 4. 在Node.js使用socket.io 在 Node.js 应用程序使用以下代码启动 socket.io: ``` var io = require('socket.io')(3000); io.on('connection', function (socket) { console.log('a user connected'); }); ``` 这段代码启动了一个 socket.io 实例,并监听在3000端口上,当有一个新的客户端连接时,会在控制台输出“a user connected”。 在Vue.js使用socket.ioVue.js应用程序使用以下代码连接到socket.io: ``` import io from 'socket.io-client'; const socket = io('http://yourdomain.com'); ``` 这段代码连接到运行在yourdomain.com的socket.io服务器。 至此,你就可以在Vue.js应用程序使用socket.io了,并且通过nginx实现了负载均衡。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值