由於最近自己在 Debian 上自行編譯惡搞....完全是 bsd style
預設直接跑 configure 的話給的 cflag 很少..所以得自己 hack
sudo 環境底下的話會變成像這樣
有興趣的話請自行翻閱 gcc 的 CFLAGS 是代表啥意思
sudo "CFLAGS=-m64 -Wall -g -O2 -pipe -march=native -fno-strict-aliasing -D_REENTRANT" ./configure blablabla
--enable-epoll --with-pthreads 算是重要的編譯選項,最好加個
--disable-select --disable-poll 確保 squid 不會用 select 或是 poll 來跑
檔案系統是 reiserfs ( best for random access ), squid storeio 則選擇 aufs,
雖然我聽到很多說法是 diskd 比 aufs 效能好,(當然也有建議跑 aufs 的拉)
...但就以前在縣網裡跑在 FreeBSD 4 、5 版上面的經驗是效能不怎麼樣 . . .
而且當時跑 diskd 還要額外重編譯核心
比較特別的是 lusca 如果是藏在 load balancer 底下的話編譯時可加個
--enable-follow-x-forwarded-for然後在 squid.conf 中 加上
follow_x_forwarded_for allow (NAME)
forwarded_for on
才能讓 squid 紀錄到外部真實的 IP
另外這次沒有編譯到 --enable-async-io ,但由於是使用萬轉的硬碟
目前 bottleneck 不在硬碟上,所以也就還好。
其他關於 squid 最佳化的說明可參考之前文章 squid 效能等注意事項!
沒有留言:
張貼留言