squid完全攻略(一)squid優化後詳細安裝步驟
#define __FD_SETSIZE 1024
把1024改為65536,然後儲存,這是Linux能接受的最大數值。 剛才編輯的這兩個檔案是C/C++程式裡面的標頭檔案,編譯squid的時候會被自動引用。除了這兩個檔案以外,我們還需要對當前環境進行設定。也就是你用ssh登入到系統時的一些設定。每個登入程序都可以進行單獨的設定,當關閉目前登入回話,環境變數的設定就失效了. ulimit用來設定當前環境的一些資源限制。這個命令是對環境進行設定,所以退出當前登入程序後命令將會失效。 我們輸入下面的命令
#ulimit -Hs 65536
#ulimit -n 65536
也可以永久修改這些限制,開機自動生效,配置如下:
vi /etc/security/limits.conf,新增以下內容
* soft nofile 65536
* hard nofile 65536
H引數是硬性限制,s是堆疊上限,n是檔案描述符上限。
註釋:
ulimit 引數介紹:-H 設定硬體資源限制.
-S 設定軟體資源限制.
-a 顯示當前所有的資源限制.
-c size:設定core檔案的最大值.單位:blocks
-d size:設定資料段的最大值.單位:kbytes
-f size:設定建立檔案的最大值.單位:blocks
-l size:設定在記憶體中鎖定程序的最大值.單位:kbytes
-m size:設定可以使用的常駐記憶體的最大值.單位:kbytes
-n size:設定核心可以同時開啟的檔案描述符的最大值.單位:n
-p size:設定管道緩衝區的最大值.單位:kbytes
-s size:設定堆疊的最大值.單位:kbytes
-t size:設定CPU使用時間的最大上限.單位:seconds
-v size:設定虛擬記憶體的最大值.單位:kbytes 安裝與配置 安裝 tar -zxvf squid-3.0.STABLE24.tar.gz cd squid-3.0.STABLE24 ./configure --prefix=/usr/local/squid\--enable-gnuregex\--enable-icmp\--enable-linux-netfilter\--enable-default-err-language="Simplify_Chinese"\--enable-kill-parent-hack\--enable-cache-digests\--enable-dlmalloc\--enable-poll\--enable-async-io=240\--enable-delay-pools\--with-filedescriptors=65536\--enable-snmp\--enable-arp-acl\--mandir=/usr/share/man/--with-large-files 註釋: 可以用命令檢視 ./configure --help --enable-gnuregex 在訪問控制列表和其他配置指令裡,squid使用正則表示式作為匹配機制。GNU的正則表示式庫包含在squid的原始碼包裡;它可以在沒有內建正則表示式的作業系統中使用。./configure指令碼偵察你係統中的正則表示式庫,假如必要,它可以啟用使用GNU正則表示式。如果因為某些理由,你想強制使用GNU正則表示式,比如在proxy未來的規劃當中。可能利用到正則表示法的方式來抵擋一些惡意的網站,你可以將這個選項加到./configure命令後. --enable-icmp squid能利用ICMP訊息來確定迴環時間尺寸,非常象ping程式。你能使用該選項來啟用這些功能。 --enable-linux-netfilter Netfilter是linux 2.4系列核心的包過濾器名字。假如你想在linux2.4或以後的版本中使用HTTP攔截功能,那麼啟用該選項。 --enable-default-err-language=lang 該選項設定error_directory指令的預設值。例如,假如你想使用荷蘭語,你能這樣指定: % ./configure --enable-default-err-language=Dutch 你也能在squid.conf裡指定error_directory指令,在附錄A中有描述。假如你忽略該選項,英語是預設錯誤語言。 --enable-kill-parent-hack 在我們關掉squid的時候,連同parent process 一起關掉 --enable-cache-digests Cache消化是ICP的另一個替代,但有著截然不同的特性 --enable-dlmalloc[=LIB] 在一些系統上,內建的記憶體分配機制(malloc)在使用squid時表現不盡人意。使用--enable-dlmalloc選項將squid原始碼包中的dlmalloc包編譯和連結進來。假如你的系統中已安裝dlmalloc,你能使用=LIB引數指定庫的路徑。 --enable-poll unix提供兩個相似的函式用以在I/O事件裡掃描開放檔案描述符:select()和poll()../configure指令碼通常能非常好的計算出何時使用poll()來代替select().假如你想強制使用poll(),那麼指定該選項。 --enable-async-io[=N_THREADS] 非同步I/O是squid技術之一,用以提升儲存效能。aufs模組使用大量的執行緒來執行磁碟I/O操作。該程式碼僅僅工作在linux和solaris系統中。=N_THREADS引數改變squid使用的執行緒數量。如果網站的伺服器配置很高,可以嘗試將這個數字改為160以上。如果是小網站的話,可以考慮降低到40左右. 請注意--enable-async-io是開啟其他三個./configure選項的快捷方式,它等同於: --with-aufs-threads=N_THREADS --with-pthreads --enable-storeio=ufs,aufs --enable-delay-pools 延時池是squid用於傳輸形狀或頻寬限制的技術。該池由大量的客戶端IP地址組成。當來自這些客戶端的請求處於cache丟失狀態,他們的響應可能被人工 --with-filedescriptors=65536 支援最大檔案描述符 --enable-snmp 簡單網路管理協議(SNMP)是監視網路裝置和伺服器的流行方法。該選項導致編譯過程去編譯所有的SNMP相關的程式碼,包括一個裁切版本的CMU SNMP庫。 --enable-arp-acl 允許基於MAC地址的存取過濾 --mandir=/usr/share/man 指定man的安裝目錄 --with-large-files 讓log支援大於2G make; make install make[3]: Leaving directory `/root/soft/squid-3.0.STABLE24/tools' make[2]: Leaving directory `/root/soft/squid-3.0.STABLE24/tools' make[1]: Leaving directory `/root/soft/squid-3.0.STABLE24/tools' make[1]: Entering directory `/root/soft/squid-3.0.STABLE24' Build Successful. make[2]: Entering directory `/root/soft/squid-3.0.STABLE24' make[2]: Nothing to be done for `install-exec-am'.==================說明安裝成功 make[2]: Nothing to be done for `install-data-am'. make[2]: Leaving directory `/root/soft/squid-3.0.STABLE24' make[1]: Leaving directory `/root/soft/squid-3.0.STABLE24' [[email protected] squid-3.0.STABLE24]# ll /usr/local/squid--enable-gnuregex/ 總計 24 drwxr-xr-x 2 root root 4096 03-04 23:35 bin drwxr-xr-x 2 root root 4096 03-04 23:35 etc drwxr-xr-x 2 root root 4096 03-04 23:35 libexec drwxr-xr-x 2 root root 4096 03-04 23:35 sbin drwxr-xr-x 5 root root 4096 03-04 23:35 share drwxr-xr-x 3 root root 4096 03-04 23:35 var bin/ :放置主要的squid執行scripts的目錄,重要的是RunCache那個檔案; etc/ :幾乎所有的squid設定檔都在這裡; libexec/ :一些函式庫; sbin/ :重要的就是那個squid的執行檔! share/ :一些錯誤訊息程式碼表示檔案,以及一些小圖示放置的目錄; var/ :預設是放置log file的,不過我不喜歡放在這裡,這點等一下我們會修改的! 第一次執行squid時,要先設定/usr/local/squid/var許可權,還有在/usr/local/squid/etc/squid.conf新增主機,visible_hostnam viong 並制定http_port 埠號.這裡預設個80 # chown -R nobody:nobody /usr/local/squid/var /usr/local/squid/sbin/squid –zD 首次執行squid需要初始化cache,由於squid要驗證其DNS可用才能啟動,目前都沒配置,所以我先禁用初始化DNS測試,先讓squid啟動 netstat -ntpl |grep 80 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN [[email protected] soft]# sh squid.sh start
相關推薦
squid完全攻略(一)squid優化後詳細安裝步驟
Squid工作原理 Squid是Linux下一個快取Internet資料的代理伺服器軟體,它接收使用者的下載申請並自動處理所下載的資料。即當一個使用者下載www.idcshare的頁面,他請求squid為他取得這個頁面,suqid會連線到申請www.idcshare的網
ClearCase完全攻略(一):Base和UCM的前生後世
ClearCase到底是幹嘛的? 通俗的我們可以認為是一款IBM出的原始碼管理工具。 ClearCase的四大功能? (版本管理+過程管理+工作空間管理+bulid管理)有個經典的圖,各個功能圖裡面說的很清楚了。 Base和UCM到底有什麼區別? Base 就是Clear
簡易Python入門攻略(一)
python是最近越來越火的程式語言,也是非常多準備踏入程式設計領域的首選語言。 w3cschool經過精心的歸納和總結,為各位小夥伴帶來一套簡單,並且有效的入門攻略。 請各位小夥伴務必認真閱讀和觀看今天先來聊聊Python和Python的學習方法。
VSCode外掛開發全攻略(一)概覽
文章索引 寫在前面 一年前我寫了一篇3萬多字的Chrome外掛(擴充套件)開發全攻略,反響還不錯,幫助了很多新手快速上手,甚至包括大名鼎鼎的紅芯瀏覽器(戳這裡瞭解更多)。 最近因工作需要又接觸到了vscode外掛開發,所以趁勢再寫一篇有關vscode外掛開發的文章,記錄一些自己踩過的坑以及接觸vscod
ClearCase完全攻略(三) UCM下的一些概念全解析1
上篇文章中的連結搞錯, clearcase的實施方案 ,Base的。其實就是較多的使用分支和標籤兩種策略 用來初步明白Base專案差不多。深入的還需要看更多的資料 先講下UCM的發展歷史,1999就提出了,然後到現在已經10多年了。所以算是相當成熟了,IBM官方出了
在Struts2中實現自定義分頁標籤全攻略(一)
我們先看看這個分頁標籤的效果: 使用標籤的最大好處就是下次再用到的話直接引用就行,而不必重寫。 本人對Struts2自定義標籤沒有太深究,在網上找了一些資料可以參考參考: 其實,開發自定義標籤並不需要Struts2的支援,一般情況下,只需要繼承javax.servle
Nginx(一)Linux上的Nginx安裝步驟
一、安裝準備 首先由於nginx的一些模組依賴一些lib庫,所以在安裝nginx之前,必須先安裝這些lib庫,這些依賴庫主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 所以執行如下命令安裝 $ yum install
ClearCase完全攻略(十一) ClearCase賬戶管理
上個文章說說到要建立不同的使用者組。然後不同使用者組在VOB中對應不同的許可權 ClearCase7.0還沒有自己的的賬戶管理體系。主要是藉助域使用者管理器。由作業系統實現。 據說ClearCase7.1有了自己的賬戶管理體系。還沒去查證。 (其實也無非就是,使用者,使用者
Squid代理服務器(一)
Squid 代理服務器 搭建代理傳統squid代理服器 1、實驗拓撲:2、實驗步驟1)在服務器B上安裝Squid代理服務器軟件(掛載光盤,解壓縮)2)編譯安裝完成後執行make
妖怪與和尚過河問題解法完全攻略(C++完整程式碼實現)
如圖 1 所示。有三個和尚和三個妖怪(也可翻譯為傳教士和食人妖)要利用唯一一條小船過河,這條小船一次只能載兩個人,同時,無論是在河的兩岸還是在船上,只要妖怪的數量大於和尚的數量,妖怪們就會將和尚吃掉。現在需要選擇一種過河的安排,保證和尚和妖怪都能過河且和尚不能被妖怪吃掉。 圖 1 妖怪與和尚過河遊戲
分塊查詢演算法完全攻略(原理、實現及時間複雜度)
一般對於需要查詢的待查資料元素列表來說,如果很少變化或者幾乎不變,則我們完全可以通過排序把這個列表排好序以便我們以後查詢。但是對於經常增加資料元素的列表來說,要是每次增加資料都排序的話,那真的是有點太累人了。 所以之前我們分析過,對於幾乎不變的資料列表來說,排序之後使用二分查詢是很不錯的,但是對於經常變動的
ClearCase完全攻略(十二) CCRC客戶端安裝和外掛安裝
CCRC的環境配置說起來簡單,其實折騰人。 安裝問題。 接下來就是Eclipse可能需要提示缺少org.eclipse.draw2d 外掛,所以需要手工安裝GEF這個外掛,下載地址 。注意版本對應。 Clearcase好像版本上下不相容,CCRC2003和7.0的不能
Linux實戰第一篇:Centos6.9/RHEL6.9詳細安裝攻略(LVM)
linux個人筆記分享(在線閱讀):http://note.youdao.com/noteshare?id=bb2ad6216bff8cddaa3e360c76392c9b PDF版本下載http://down.51cto.com/data/2321269本文出自 “人才雞雞” 博客,請務必保留此出處http
博客園積分與排名升級攻略(轉)
idt 互聯 png 積分 eid class .html googl 影響力 博客園積分算法探討 今天在dudu的《博客園FAQ》上看到了博客積分算法規則。因為同樣是搞互聯網的,平時工作也涉及到用戶積分算法的設計,所以特把此問題拿出來分析探討。初衷只是純學術的研究探討,
【微軟大法好】VS Tools for AI全攻略(2)
port shell orf 方式 virt cnblogs 我們 玩耍 虛擬 接著上文,我們來討論如何使用Azure資源來訓練我們的tensorflow項目。Azure雲我個人用得很多,主要是因為微軟爸爸批了150刀每月的額度,我可以愉快地玩耍。 那麽針對Azure,有成
程序員技術練級攻略(轉)
proxy sele more class 算法 tp服務器 list scrip 子程序 前言 你是否覺得自己從學校畢業的時候只做過小玩具一樣的程序?走入職場後哪怕沒有什麽經驗也可以把以下這些課外練習走一遍(朋友的抱怨:學校課程總是從理論出發,作業項目都看不出有什麽實
雲架構師進階攻略(1)
此文已由作者劉超授權網易雲社群釋出。 歡迎訪問網易雲社群,瞭解更多網易技術產品運營經驗。 一、架構的三個維度和六個層面 1.1、三
【乾貨】Chrome外掛(擴充套件)開發全攻略(轉載)
轉載來源:https://www.cnblogs.com/liuxianan/p/chrome-plugin-develop.html 【乾貨】Chrome外掛(擴充套件)開發全攻略 寫在前面 我花了將近一個多月的時間斷斷續續寫下這篇博文,並精心寫下完整demo,寫部落格的辛苦大家懂的,
雲架構師進階攻略(3)
此文已由作者劉超授權網易雲社群釋出。 歡迎訪問網易雲社群,瞭解更多網易技術產品運營經驗。 十、基於Hadoop和Spark瞭解大資料平臺 對於資料架構的部分,其實經歷了三個過程,分別是Hadoop Map-Reduce 1.0,基於Yarn的Map-Reduce 2.0, 還有Sp
VSCode外掛開發全攻略(七)WebView
更多文章請戳VSCode外掛開發全攻略系列目錄導航。 什麼是Webview 大家都知道,整個VSCode編輯器就是一張大的網頁,其實,我們還可以在Visual Studio Code中建立完全自定義的、可以間接和nodejs通訊的特殊網頁(通過一個acquireVsCodeApi特殊方法),這個網頁就叫W