日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

在团800运维工作总结之squid做回源图片的二级缓存

發(fā)布時間:2025/5/22 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在团800运维工作总结之squid做回源图片的二级缓存 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

# 主機名(3.0加入配置),無此項無法啟動

visible_hostname 172.16.1.80


# 管理員郵箱,會顯示在錯誤信息頁面上,方便發(fā)生錯誤時聯(lián)系!

cache_mgr yanchao@rd.tuan800.com


# 實現(xiàn)透明代理(squid2.7以上),其中vhost是必須的

http_port 8091 vhost vport

icp_port 3130

# 緩存設(shè)置

cache_mem 256 MB

maximum_object_size_in_memory 2 MB


# 替換機制(lru叫做“最近不常用的單元”unit一般就是常說object, 也就是當cache

# 中的內(nèi)容比如內(nèi)存或硬盤達到上限時就需要進行數(shù)據(jù)的換進和換出工作)

memory_replacement_policy lru


# 緩存目錄50G,其中一級目錄16個,二級256個(每個一級下16個二級)

cache_dir ufs /data1/squid/var/cache 500000 16 256

max_open_disk_fds 0


#緩存內(nèi)容大小控制,當cache目錄被占用到97%時,內(nèi)容將被清空20%

cache_swap_low 80

cache_swap_high 97


# 錯誤信息目錄

error_directory /usr/local/squid/share/errors/Simplify_Chinese


# 最大和最小緩存對象

minimum_object_size 0 KB

maximum_object_size 30 MB


# 日志格式

logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh %tr

access_log /usr/local/squid/var/logs/page_zs_access_log combined

pid_filename /usr/local/squid/var/logs/squid.pid


# 不記錄store.log

cache_store_log none


# 指定代理服務(wù)器IP,2.5版本以上都是以cache_peer指定,sibling是2臺squid服務(wù)的緩存不同內(nèi)容,當一個節(jié)點沒有命中去另一個節(jié)點查找,主要為了減少負載,后端是1.84 85 86沒命中緩存的圖片裁剪服務(wù)器

cache_peer 172.16.1.83 sibling 8091 3130

cache_peer 172.16.1.82 sibling 8091 3130

cache_peer 172.16.1.84 parent 10001 0 no-query originserver round-robin name=resize1

cache_peer 172.16.1.85 parent 10001 0 no-query originserver round-robin name=resize2

cache_peer 172.16.1.86 parent 10001 0 no-query originserver round-robin name=resize3


cache_peer_domain resize1 resize2 resize3


#緩存過期

refresh_pattern -i \.jpg$ 1440 90% 43200 reload-into-ims

refresh_pattern -i \.jpeg$ 1440 90% 43200 reload-into-ims

refresh_pattern -i \.webp$ 1440 90% 43200 reload-into-ims

refresh_pattern -i \.png$ 1440 90% 43200 reload-into-ims


# 允許客戶端所有請求(這里可以設(shè)置攔截url,格式如下面兩行緩存設(shè)置)

http_access allow all



#設(shè)置運行squid用戶,一般不能以root運行

cache_effective_user squid

cache_effective_group squid

~ ? ? ? ? ? ? ? ??



命令

Squid日常維護過程中,常用的一些命令:

1,初始化你在 squid.conf 里配置的 cache 目錄
squid -z
如果有錯誤提示,請檢查你的 cache目錄的權(quán)限。
可以使用使用更改目錄權(quán)限:
chown -R squid:squid /cache目錄

2,對你的squid.conf 排錯,即驗證 squid.conf 的 語法和配置。
squid -k parse
如果squid.conf 有語法或配置錯誤,這里會返回提示你,如果沒有返回,嘗試啟動squid。

3,在前臺啟動squid,并輸出啟動過程。
/usr/local/squid/sbin/squid -N -d1
如果有ready to server reques相關(guān)信息,說明Squid啟動成功。
然后 ctrl + c,停止squid,并以后臺運行的方式啟動它。

4,啟動squid在后臺運行。
squid -s
可以使用 ps -ax |grep squid 來查看squid進程是否存在。

5,停止 squid
squid -k shutdown

6,重引導修改過的 squid.conf
squid -k reconfigure -f /XXX/squid.conf
當squid進行過配置更改后,可以使用該命令進行squid配置重載。

7,把squid添加到系統(tǒng)啟動項
vi /etc/rc.d/rc.local
/usr/local/squid/sbin/squid -s

8,修改cache 緩存目錄的權(quán)限。
chown -R squid:squid /cache目錄
cache緩存目錄根據(jù)自己配置進行更改,squid用戶和組是 squid,squid
(注:在FreeBSD系統(tǒng)中,如果我們的squid監(jiān)聽的是80端口時,只有root用戶才能啟動)。

9,修改squid 日志目錄的權(quán)限
chown -R squid:squid 定義的日志文件所在目錄
這一步并不是適合每一個使用squid的用戶.意為讓squid有權(quán)限在該目錄進行寫操作 。

10,查看你的日志文檔。
more /usr/local/squid/var/logs/access.log | grep TCP_MEM_HIT
該指令可以看到在squid運行過程中,有那些文件被squid緩存到內(nèi)存中,并返回給訪問用戶。
more /usr/local/squid/var/logs/access.log | grep TCP_HIT
該指令可以看到在squid運行過程中,有那些文件被squid緩存到cache目錄中,并返回給訪問用戶。
more /usr/local/squid/var/logs/access.log | grep TCP_MISS
該指令可以看到在squid運行過程中,有那些文件沒有被squid緩存,而是從原始服務(wù)器獲取并返回給訪問用戶。

二.squid命中率分析
/usr/local/squid/bin/squidclient -p 80 mgr:info
/usr/local/squid/bin/squidclient -p 80 mgr:5min
可以看到詳細的性能情況,其中PORT是你的proxy的端口,5min可以是60min

取得squid運行狀態(tài)信息: squidclient -p 80 mgr:info
取得squid內(nèi)存使用情況: squidclient -p 80 mgr:mem
取得squid已經(jīng)緩存的列表: squidclient -p 80 mgr:bjects. use it carefully,it may crash
取得squid的磁盤使用情況: squidclient -p 80 mgr:diskd
強制更新某個url:squidclient -p 80 -m PURGE?http://www.xxx.com/xxx.php
更多的請查看:squidclient-h 或者 squidclient -p 80 mgr:
查命中率:
squidclient -h IP(具體偵聽IP) -p 80(具體偵聽端口) mgr:info


三、定期清除swap.state內(nèi)無效數(shù)據(jù)
/path/to/squid/sbin/squid -k rotate -f /path/to/squid/conf_file
vi /etc/crontab
0??????? 0?????? *?????? *?????? *?????? root??? /usr/local/sbin/squid -k rotate -f /usr/local/etc/squid/squid1.conf
當squid應(yīng)用運行了一段時間以后,cache_dir對應(yīng)的swap.state文件就會變得越來越大,里面的無效接口數(shù)據(jù)越來越多,這可能影響squid的響應(yīng)時間,因此需要使用rotate命令來使squid清理swap.state里面的無效數(shù)據(jù),減少swap.state的大小。




辦公室做的squid給客服用,主要是針對本公司網(wǎng)站圖片做的緩存

visible_hostname 192.168.10.89


cache_mgr yanchao@rd.tuan800.com


http_port 8091 vhost vport

icp_port 3130


cache_mem 30000 MB


maximum_object_size_in_memory 2 MB


memory_replacement_policy lru


cache_dir ufs /data1/squid/var/cache 50000 16 256


max_open_disk_fds 0


cache_swap_low 80

cache_swap_high 97


error_directory /usr/local/squid/share/errors/Simplify_Chinese


minimum_object_size 0 KB

maximum_object_size 30 MB


logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st "%{Referer}>h" "%{User-Agent}>h" %Ss:%Sh

access_log /usr/local/squid/var/logs/page_zs_access_log combined

pid_filename /usr/local/squid/var/logs/squid.pid


cache_store_log none


cache_peer 192.168.10.89 sibling 8091 3130

cache_peer 192.168.10.59 sibling 8091 3130

cache_peer * parent 80 0 no-query originserver name=d

cache_peer * parent 80 0 no-query originserver name=j

cache_peer * parent 80 0 no-query originserver name=a

cache_peer * parent 80 0 no-query originserver name=b

cache_peer * parent 80 0 no-query originserver name=c

cache_peer * parent 80 0 no-query originserver name=e

cache_peer * parent 80 0 no-query originserver name=f

cache_peer * parent 80 0 no-query originserver name=g

cache_peer * parent 80 0 no-query originserver name=h

cache_peer * parent 80 0 no-query originserver name=i



cache_peer_domain d *.com

cache_peer_domain a *.com

cache_peer_domain b *.com ?

cache_peer_domain c *.com

cache_peer_domain e *.com

cache_peer_domain f *.com

cache_peer_domain g *.com

cache_peer_domain h *.com ?

cache_peer_domain i *.com

cache_peer_domain j *.com





refresh_pattern -i \.jpg$ 1440 90% 43200 reload-into-ims

refresh_pattern -i \.jpeg$ 1440 90% 43200 reload-into-ims

refresh_pattern -i \.webp$ 1440 90% 43200 reload-into-ims

refresh_pattern -i \.png$ 1440 90% 43200 reload-into-ims


http_access allow all


cache_effective_user squid

cache_effective_group squid

?? ? ? ? ?


轉(zhuǎn)載于:https://blog.51cto.com/4249964/1746676

總結(jié)

以上是生活随笔為你收集整理的在团800运维工作总结之squid做回源图片的二级缓存的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。