美文网首页
代理与缓存

代理与缓存

作者: 水墨小龙虾 | 来源:发表于2017-03-03 19:47 被阅读0次

正向代理与反向代理

正向代理的过程,它隐藏真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务器都被代理服务代替请求,比如浏览器访问google.com,被拦截,于是你在国外搭建一台代理服务器,让代理服务器请求google.com 代理把请求结果返回给我反向代理隐藏真实的服务端

当我们请求www.baidu.com时候,背后有很多服务器为我们服务,www.baidu.com就是我们的反向代理服务器,反向代理服务器会将请求转发到真实的服务器中

两者的区别在于代理的对象不一样:正向代理代理的对象是客户端,反向代理代理的对象是服务端

node-http-proxy

一个支持反向代理和负载均衡的npm包

//以前你访问资源是从http://localhost:9000取得,现在通过反向代理服务器http://localhost:8000,他去请求9000端口的内容
var http = require('http'),
    httpProxy = require('http-proxy');

// 创建代理服务器
httpProxy.createProxyServer({target:'http://localhost:9000'}).listen(8000);

// 创建目标服务器(http://localhost:9000)
http.createServer(function (req, res) {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.write('request successfully proxied!' + '\n' + JSON.stringify(req.headers, true, 2));
  res.end();
}).listen(9000);
(2)配置gzip压缩

开启网站的 gzip 压缩功能,通常可以高达70%,也就是说,如果你的网页有30K,压缩之后就变成9K, 对于大部分网站,显然可以明显提高浏览速度(注:需要浏览器支持)。

var compression = require('compression');
app.use(compression());
(3)配置http缓存:maxAge、etag、lastModified等
app.use(express.static(path.join(__dirname, 'public'),{maxAge:100,etag:true,lastModified:true}));
(4)配置combo
app.get('/javascripts', combo.combine({rootPath: path.join(__dirname, 'public')+'/javascripts'}), combo.respond);
app.get('/stylesheets', combo.combine({rootPath: path.join(__dirname, 'public')+'/stylesheets'}), combo.respond);
(5)配置ssi SSI是服务器端嵌入指令,在内容发送到浏览器之前,解析指令标签将其内容包含到网页中
expressSSI.init(express,'http://gome.com.cn');

相关文章

  • Fiddler禁用资源缓存

    我们先说下缓存代理 缓存代理: 代理转发响应时,缓存(Caching Proxy)会预先将资源的副本缓存保存在代理...

  • Web 缓存

    Web 缓存的作用与类型 数据库缓存memcached redis 服务端缓存代理服务器缓存squidCDN缓存(...

  • 代理与缓存

    正向代理与反向代理 正向代理的过程,它隐藏真实的请求客户端,服务端不知道真实的客户端是谁,客户端请求的服务器都被代...

  • SpringBoot缓存

    缓存三问 ??? 什么是缓存?客户端缓存代理缓存反向代理缓存Web服务器端缓存详细参考:https://blog....

  • Nginx 代理缓存

    Nginx的缓存可以简单分成web缓存和代理缓存,本篇文章主要介绍代理缓存。 web缓存 Nginx提供了expi...

  • Nginx的代理缓存设置

    Nginx的代理缓存设置 expires: 设置浏览器的缓存时间 (客户端缓存) 服务端设置缓存(反向代理缓存) ...

  • Nginx 缓存

    浏览器缓存 反向代理缓存

  • Squid服务搭建

    一、简介 Squid 是一个 Web 缓存代理,支持 HTTP, HTTPS, FTP, 以及更多。它通过缓存与重...

  • taobao-pamirs-proxycache 缓存代理框架源

    写在前面 taobao-pamirs-proxycache 是一款开源缓存代理框架, 它将 缓存代码 与 业务代码...

  • Http缓存

    1. 缓存的分类 缓存分为服务端缓存和客户端缓存 服务端缓存又分为代理服务器缓存和反向代理服务器缓存(也叫网关缓存...

网友评论

      本文标题:代理与缓存

      本文链接:https://www.haomeiwen.com/subject/jvoqgttx.html