20191204笔记
数据推送之Comet
前端进行数据推送(递归轮询)
function conn(){ $.ajax({ url:"data.php", dataType:"json", success:function(data){ console.log(data); conn() } }) } conn();
后端进行数据推送(
ob_flush()+flush()
)
header("Content-type:application/json;charset=utf-8"); header("Cache-Controk:max-age=0");//不缓存 $i=0; while($i<9>){ $res=rand(1,999); echo $res."<br>"; ob_flush(); flush();//送出去 }
数据推送之WebScoket
npm i scoket.io
插件
数据推送之SSE(Server-Send-Event)
1.php代码
<?php header("Content-Type:text/event-stream;charset=utf-8"); header("Access-Control-Allow-Origin:http://127.0.0.1/"); echo "data:现在的时间是:".date('H:i:s')."\r\n"; ?>
2.js代码
var source; function init(argument){ source=new EventSource("http://127.0.0.1/sse/index.php"); source.onopen=function(){ console.log("连接已建立",this.readyState) } source.onmessage=function(e){ console.log("从服务器获取的数据:",e.data) } source.onerror=function(){ console.log("err") } } init();
3.然后建立一个html,把js文件放入就行
nginx反向***与负载均衡
- HTTp Upstream模块
- ip_hash指令
- server指令(权重)
- upstream指令及相关变量
nodejs上线部署
config/nginx.config
配置server服务器
上线
- 准备上线需要的压缩文件,上传到服务器集群
- 安装线上依赖,
npm i --production
- pm2进程守护
pm2 start pm2.json
- 在nginx服务器上配置负载均衡