squid存储机制
2016-07-03 23:31
567 查看
转载至:http://blog.chinaunix.net/uid-23242010-id-2973123.html
1. ufs, aufs, diskd文件系统
ufs, aufs, 以及diskd三种cache机制采用相同disk layout机制,它们都是基于文件系统的,采用二级索引机制,使用文件来存放一个cache object。三种cache机制的区别是,ufs的i/o是由主squid进程同步完成的,而aufs使用一组线程来完成i/o操作,diskd则对每一个索引区对应下的文件操作创建一个diskd进程来完成i/o操作。我们称这三种cache机制都为ufs-based存储机制,它们与trafficserver的存储机制区别很大。
2. coss存储机制
基于ufs的存储机制都有一个缺点,就是频繁的系统调用read()与unlink(),squid引入coss存储机制来解决这个问题,coss存储机制与trafficserver的存储机制在设计思想上比较接近,只是在实现上各不相同。
(1) coss以一个stripe为单位,向cache上写入数据,而trafficserver以一个agg_buffer为单位,默认stripe单位1M,而agg_buffer单位为4M。coss每次都是刚刚好写stripe大小的缓存内容至cache,而trafficserver每次写[agg_buffer/2, agg_buffer)范围内的缓存内容,所以coss每次都是1M写,而trafficserver每次都是2M或者2M以上写。
(2) 在coss机制中,file number与block number是相同的。block_size的大小以及squid的file number的位数决定了一个cache_dir的上限。比如假设file number为24位,block_size为512bytes,则一个cache_dir最大可配置8G。在coss中,知道一个object对应的file number后,就能够在trafficserver中,没有file
number以及block number这种概念,一个object被写至当前位置,
(3) coss的设计不支持任意大小文件读写,而trafficserver可以。
3. null存储机制
这种机制意味着不启用disable cache,一个写至null cache_dir的操作实际上没有真正意义上写入disk。
1. ufs, aufs, diskd文件系统
ufs, aufs, 以及diskd三种cache机制采用相同disk layout机制,它们都是基于文件系统的,采用二级索引机制,使用文件来存放一个cache object。三种cache机制的区别是,ufs的i/o是由主squid进程同步完成的,而aufs使用一组线程来完成i/o操作,diskd则对每一个索引区对应下的文件操作创建一个diskd进程来完成i/o操作。我们称这三种cache机制都为ufs-based存储机制,它们与trafficserver的存储机制区别很大。
2. coss存储机制
基于ufs的存储机制都有一个缺点,就是频繁的系统调用read()与unlink(),squid引入coss存储机制来解决这个问题,coss存储机制与trafficserver的存储机制在设计思想上比较接近,只是在实现上各不相同。
(1) coss以一个stripe为单位,向cache上写入数据,而trafficserver以一个agg_buffer为单位,默认stripe单位1M,而agg_buffer单位为4M。coss每次都是刚刚好写stripe大小的缓存内容至cache,而trafficserver每次写[agg_buffer/2, agg_buffer)范围内的缓存内容,所以coss每次都是1M写,而trafficserver每次都是2M或者2M以上写。
(2) 在coss机制中,file number与block number是相同的。block_size的大小以及squid的file number的位数决定了一个cache_dir的上限。比如假设file number为24位,block_size为512bytes,则一个cache_dir最大可配置8G。在coss中,知道一个object对应的file number后,就能够在trafficserver中,没有file
number以及block number这种概念,一个object被写至当前位置,
(3) coss的设计不支持任意大小文件读写,而trafficserver可以。
3. null存储机制
这种机制意味着不启用disable cache,一个写至null cache_dir的操作实际上没有真正意义上写入disk。
相关文章推荐
- CentOS中nginx负载均衡和反向代理的搭建
- 转:反向代理服务器的工作原理
- Nginx反向代理服务器(博客架构优化)
- Nginx正反向代理、负载均衡等功能实现配置
- 利用Nginx+Mono+Fastcgi代替IIS对Asp.Net进行反向代理
- Windows下Nginx学习历程_Nginx反向代理设置从80端口转向其他端口
- Nginx反向代理配置
- Apache配置反向代理、负载均衡和集群(mod_proxy方式)
- Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离详解
- nginx负载均衡以及反向代理配置
- squid 透明代理配置
- Nginx正反向代理、负载均衡等功能实现配置
- 关于正向代理与反向代理的理解
- 跨域访问方法-Nginx反向代理
- FastDFS安装与nginx反向代理配置
- 一张图了解正向代理和反向代理
- Nginx反向代理和负载均衡
- Nginx负载均衡与反向代理实现动、静态网页分离实现图
- Nginx反向代理关于端口的问题
- Nginx正反向代理、负载均衡等功能实现配置