怎麼樣巧用tmpfs加速你的linux伺服器

來源:互聯網
上載者:User

使用tmpfs,我把他消化後用來實現虛擬磁碟來存放squid的快取檔案和php的seesion。速度快不少哦!
預設系統就會載入/dev/shm ,它就是所謂的tmpfs,有人說跟ramdisk虛擬磁碟),但不一樣。象虛擬磁碟一樣,tmpfs 可以使用您的 RAM,但它也可以使用您的交換分區來儲存。而且傳統的虛擬磁碟是個塊裝置,並需要一個 mkfs 之類的命令才能真正地使用它,tmpfs 是一個檔案系統,而不是塊裝置;您只是安裝它,它就可以使用了。

tmpfs有以下優勢:

1.動態檔案系統的大小,

2.tmpfs 的另一個主要的好處是它閃電般的速度。因為典型的 tmpfs 檔案系統會完全駐留在 RAM 中,讀寫幾乎可以是瞬間的。

3.tmpfs 資料在重新啟動之後不會保留,因為虛擬記憶體本質上就是易失的。所以有必要做一些指令碼做諸如載入,綁定的操作。

好了講了一些大道理,大家看的煩了吧,還是講講我的應用程式吧:)

首先在/dev/stm建個tmp檔案夾,然後與實際/tmp綁定

mkdir /dev/shm/tmp

chmod 1777 /dev/shm/tmp

mount --bind /dev/shm/tmp /tmp

1.squid的緩衝目錄設定

vi /etc/squid/squid.conf

修改成

cache_dir ufs /tmp 256 16 256

這裡的第一個256表示使用256M記憶體,我覺得高效能LINUX雙效防火牆HOWTO使用ramdisk的方法還不如直接使用tmpfs,至少每次啟動不用mkfs,還可以動態改變大小。

然後重啟一下服務,ok,現在所有的squid快取檔案都儲存倒tmpfs檔案系統裡了,很快哦。

2.對php效能的最佳化

對於一個訪問量大的以apache+php的網站,可能tmp下的臨時檔案都會很多,比如seesion或者一些快取檔案,那麼你可以把它儲存到tmpfs檔案。

儲存seesion的方法很簡單了只要修改php.ini就行了,由於我已經把/dev/stm/tmp與/tmp綁定,所以不改寫也行,至於php程式產生的快取檔案那隻能改自己的php程式了:)

希望我的這個方法,能對你有所啟發。

() [#page_#][#page_#]

HistoryName webalizer.hist


Incremental yes


HostName www.test.com


PageType htm*PageType cgiPageType phtmlPageType php3PageType plPageType jsp


4、設定cron任務


在/etc/crontab檔案最後添加如下內容:


02 4 * * * root /usr/local/bin/webalizer


即可


5、建立輸出目錄


#mkdir /usr/local/apache/htdocs/usage


第九步:保護訪問統計資料不被非法訪問


我們肯定不會希望自己網站訪問統計資訊隨意被別人瀏覽,因此需要把usage目錄保護起來,只允許合法使用者訪問。


一、條件


www.test.com的網站對"/"有設定為:DocumentRoot /usr/local/apache/htdocsAccessFileName .htaccessAllowOverride All


二、需求


需求:限制/usr/local/apache/htdocs/usage/目錄的訪問,只允許使用者"admin"以口令"12345678"訪問此目錄。


三、使用htpasswd建立使用者檔案


htpasswd -c /usr/local/apache/.htpasswd admin


此程式會詢問使用者"admin"的口令,你輸入"12345678",兩次生效。


四、建立.htaccess檔案


用vi在/usr/local/apache/htdocs/usage/目錄下建立一個檔案.htaccess,寫入以下幾行:


AuthName admin-onlyAuthType BasicAuthUserFile /usr/local/apache/.htpasswdrequire user admin


五、測試


這時候通過瀏覽器訪問http://www.test.com/usage就會彈出框請求輸入使用者名稱和口令,這時候輸入admin、12345678就可以才可以訪問該目錄。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.