当前位置: 首页 > news >正文

Squid服务的缓存概念

Squid缓存概念

squid是一个缓存服务器的守护进程

之前涉及的缓存服务:redis

2-8原则:80%的访问就是从20%的数据提供的;因此把20%的数据给到缓存–>完美解决等待时间;

nginx是没有缓存的服务的;那么专业的事情就交给专业服务来部署squid服务

  • 支持的代理协议:FTP / HTTP /SSL,套接字
  • 存储分类:磁盘>分区>目录>Object(缓存文件)
    • 一般是只有二级目录:存放在Object目录上
    • 涉及分区就是涉及文件系统;
  • 索引方式:
    • Hash Tables:目录–>每个Digest的索引信息
      • 大概的目录篇章;
    • Digest Tables:索引–>不同分区对应的Object;

Varnish也是另外一款缓存的概念;

  • squid的竞争者:
  • 架构比较新颖–>功能比较多
  • 技术的更新是需要时间的—>会不会取代squid?

squid的工作逻辑图:

客户端-->请求数据--->squid代理服务器--->后端服务器
--->squid服务器询问后端服务器数据并且缓存到自己的cache上面
--->squid服务也是有最大的缓存量-->也可以设置缓存的要求

squid的工作模式:

  • 传统代理
  • 透明代理
  • 反向代理

1.1、squid的三种工作模式讲解

传统代理与透明模式–>用在内网

反向代理–>多数用在公网

2.1、传统模式:

  • 模式说明:此类工作模式为三种模式中最简单的构成,对客户端配置较不友好,主要功能为加速内网用户的访问速度,减少出口流量
  • 工作架构图:
    • 标准代理服务器必须在每一个内部主机的浏览器上明确指明代理服务器的in地址和端口号
    • 要自己手工配置代理服务器的ip和端口号

2.2、透明模式:

  • 模式说明:此类工作模式配置较为复杂,需要借助防火墙对端口进行重定向操作。但是,对于客户端来说配置较为友好无需进行任何配置即可使用代理功能,主要功能为加速内网用户的访问速度,减少出口流量
  • 工作模式:
    • 通过防火墙自动给你调转;不用自己手工添加;
    • 与传统模式相比:不需要手工配置代理服务器

2.3、方向代理

  • 模式说明:反向代理服务器位于本地 WEB 服务器和互联网用户之间,处理公网用户发送的请求并代理至内网服务中,有效减轻后端真实服务器压力,增加服务并发能力
  • 工作结构图:

1.2、squid的服务相关说明

软件包: squid-3.1STABLE21-6.e16

  • 3.0以上是C语言重写

主程序: /us/sin/squid

主配器文件: /etc/squid/squid.conf

默认监听端口: TCP 3128

默认访问日志: /ar/log/squid/access.log

特别说明: Squid 在经过 3.0 版本后使用 C 语言进行重构,效率大大提升,Centos6 标配 Squid3.0以后的版本

squid的配置文件选项说明

http port 3128#Squid 	#启动端口为 3128
access 1og /war/log squid/access.log squid # 指定 Squid 存储日志目录
cache mem 64 MB	# 指定Squid进程能够使用的内存大小
cache dir ufs /var/spool/squid 100 16 256	# 指定 Squid 对象文件存储路径使用大小限制为
100MB ,一级目录个数为 16 个,二级目录个数为 256个
visible hostmame proxy benet.com # 指定 Squid 服务器自身的主机名
dns testnames www google.com www.163.com # 指定Squid服务器测试本机是否正常时的测试域名
maximum object size 4096 KB #指定Squid最大允许缓存对象的大小
reply body max size 10 MB	# 指定允许通过 Squid 的单个元素大小
http://www.lryc.cn/news/21542.html

相关文章:

  • Hadoop YARN
  • 使用 Macrobenchmark 测试 Android 应用性能
  • 【django】django-simpleui配置后,后台显示空白页解决方法
  • 【035】基于Vue的电商推荐管理系统(含源码数据库、超详细论文)
  • 【c++】模板1—函数模板
  • windows10 wsl子系统固定ip启动分配网卡法
  • ARM+Linux日常开发笔记
  • 在线文档技术-编辑器篇
  • top -p pid为什么超过100%
  • #高光谱图像分类#:分类的方法有哪些?
  • 观察者模式
  • 前端组件库自定义主题切换探索-03-webpack-theme-color-replacer webpack 同时替换多个颜色改造
  • Redis高级-主从复制相关操作
  • SPI总线设备驱动模型
  • 开发同事辞职,接手到垃圾代码怎么办?
  • gRPC简介
  • 《MySQL系列-InnoDB引擎25》表-InnoDB逻辑存储结构
  • YOLOv8之C2f模块——与YOLOv5的C3模块对比
  • 动态规划实例——换零钱的方法数(C++详解版)
  • linux c
  • 第十三章 系统错误消息 - 一般系统错误消息 S - Z
  • 移动web基础
  • MyBatis和MyBatis_Plus有什么区别【面试常考题】
  • 华为OD机试用Python实现 -【统一限载货物数最小值】(2023-Q1 新题)
  • Vue入门小练习
  • Oracle-09-集合运算符篇
  • 获取浏览器(服务端)请求中特定的Cookie
  • c++11 标准模板(STL)(std::unordered_set)(九)
  • python实战应用讲解-【实战应用篇】文件操作(附python示例代码)
  • OpenCV-Python系列(二)—— 图像处理(灰度图、二值化、边缘检测、高斯模糊、轮廓检测)