squid 缓存高效在哪?

2016-01-23 23:55:10 +08:00
 zhoumengkang

除了用在 cdn 边缘节点缓存上,那样用户访问会离得近点。
仅仅是考虑如下情况
A 和 B 在同一局域网, A 上装有 squid 的, A 作为 B 的代理,做图片的静态缓存服务器。
这样访问 A 和访问 B 的区别大吗?
访问缓存的时候会快吗?如果快,快在哪?不都是访问磁盘上的资源吗?

1918 次点击
所在节点    问与答
6 条回复
gy911201
2016-01-24 00:08:15 +08:00
仅就图片缓存来说,区别不会很大
zhoumengkang
2016-01-24 00:10:08 +08:00
晕,自己的主题不能编辑啦?
```
Squid keeps meta data and especially hot objects cached in RAM, caches DNS lookups, supports non-blocking DNS lookups, and implements negative caching of failed requests.
```
看到官网上有这么一句。在我问题中提到的,热数据在这种情况下还是有很大的优势的。也能给后端缓存住一些无效请求。
但是 `caches DNS lookups` 如果体现?应该怎么理解?
zhoumengkang
2016-01-24 00:10:45 +08:00
@gy911201 那一般在什么情况下会有比较大的优势呢?
gy911201
2016-01-24 00:12:49 +08:00
@gy911201
但 squid 还可以代理其他动态的资源,作出如下假设
1 、服务器 B 的性能是有限的,同时处理的链接数有一个最大值
2 、 A 、 B 在同一局域网下,延迟和带宽将远远好于远端访问者

那么 远端访问者访问代理 A 再由 A 去访问 B 时, B 返回数据给 A 的耗时将小于 B 直接返回数据给远端访问者,那么 B 将可以更快的释放这条链接,而 squid 作为代理服务器,他维护链接的代价是小于动态内容提供者的,整体资源更节省,所以效率更高
kozora
2016-01-24 00:13:09 +08:00
zhoumengkang
2016-01-24 00:18:49 +08:00
@kozora 好人!谢啦。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/252943

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX