當前位置:首頁 » 文件管理 » apachedbm緩存

apachedbm緩存

發布時間: 2024-10-28 10:58:16

php是什麼

PHP是PHP的遞歸首字母縮寫:Hypertext Preprocessor,一種用於創建動態和互動式HTML網頁的腳本語言。當網站訪問者打開頁面時,伺服器處理PHP命令,然後將結果發送到訪問者的瀏覽器。

主要特點

①開源性和免費性

由於PHP的解釋器的源代碼是公開的,所以安全系數較高的網站可以自己更改PHP的解釋程序。另外,PHP運行環境的使用也是免費的。

②快捷性

PHP是一種非常容易學習和使用的一門語言,它的語法特點類似於C語言,但又沒有C語言復雜的地址操作,而且又加入了面向對象的概念,再加上它具有簡潔的語法規則,使得它操作編輯非常簡單,實用性很強。

資料庫連接的廣泛性

PHP可以與很多主流的資料庫建立起連接,如MySQL、ODBC、Oracle等,PHP是利用編譯的不同函數與這些資料庫建立起連接的,PHPLIB就是常用的為一般事務提供的基庫。

④面向過程和面向對象並用

在PHP語言的使用中,可以分別使用面向過程和面向對象,而且可以將PHP面向過程和面向對象兩者一起混用,這是其它很多編程語言是做不到的。


(1)apachedbm緩存擴展閱讀

PHP優點

①流行,容易上手

PHP是目前最流行的編程語言,這毋庸置疑。它驅動全球超過2億多個網站,有全球超過81.7%的公共網站在伺服器端採用PHP。PHP常用的數據結構都內置了,使用起來方便簡單,也一點都不復雜,表達能力相當靈活。

②開發職位很多

在伺服器端的網站編程中PHP會更容易幫助你找到工作。很多互聯網相關企業都在使用PHP開發框架,所以可以說市場對PHP的開發程序員的需求還是比較大的。

③仍然在不斷發展

PHP在不斷兼容著類似closures和命名空間等技術,同時兼顧性能和當下流行的框架。版本是7之後,一直在提供更高性能的應用。

④可植入性強

PHP語言在補丁漏洞升級過程中,核心部分植入簡單易行,且速度快。

⑤拓展性強

PHP語言在資料庫應用過程中,可以從資料庫調取各類數據,執行效率高

⑵ 運用PHP可以做什麼項目啊

運用PHP的話可以做的項目太多了,因為PHP也是屬於後台語言的,而且可以做系統,可以做軟體,也可以做網站的,所以說學習PHP的話可以寫後台服務語言。

計算機俗稱電腦,是一種用於高速計算的電子計算機器,可以進行數值計算,又可以進行邏輯計算,還具有存儲記憶功能。是能夠按照程序運行,自動、高速處理海量數據的現代化智能電子設備。由硬體系統和軟體系統所組成,沒有安裝任何軟體的計算機稱為裸機。

可分為超級計算機、工業控制計算機、網路計算機、個人計算機、嵌入式計算機五類,較先進的計算機有生物計算機、光子計算機、量子計算機、神經網路計算機。蛋白質計算機等。

當今計算機系統的運算速度已達到每秒萬億次,微機也可達每秒幾億次以上,使大量復雜的科學計算問題得以解決。例如:衛星軌道的計算、大型水壩的計算、24小時天氣預報的計算等,過去人工計算需要幾年、幾十年,而現在用計算機只需幾天甚至幾分鍾就可完成。

科學技術的發展特別是尖端科學技術的發展,需要高度精確的計算。計算機控制的導彈之所以能准確地擊中預定的目標,是與計算機的精確計算分不開的。一般計算機可以有十幾位甚至幾十位(二進制)有效數字,計算精度可由千分之幾到百萬分之幾,是任何計算工具所望塵莫及的。

隨著計算機存儲容量的不斷增大,可存儲記憶的信息越來越多。計算機不僅能進行計算,而且能把參加運算的數據、程序以及中間結果和最後結果保存起來,以供用戶隨時調用;還可以對各種信息(如視頻、語言、文字、圖形、圖像、音樂等)通過編碼技術進行算術運算和邏輯運算,甚至進行推理和證明。

計算機內部操作是根據人們事先編好的程序自動控制進行的。用戶根據解題需要,事先設計好運行步驟與程序,計算機十分嚴格地按程序規定的步驟操作,整個過程不需人工干預,自動執行,已達到用戶的預期結果。

超級計算機(supercomputers)通常是指由數百數千甚至更多的處理器(機)組成的、能計算普通PC機和伺服器不能完成的大型復雜課題的計算機。超級計算機是計算機中功能最強、運算速度最快、存儲容量最大的一類計算機,是國家科技發展水平和綜合國力的重要標志。

超級計算機擁有最強的並行計算能力,主要用於科學計算。在氣象、軍事、能源、航天、探礦等領域承擔大規模、高速度的計算任務。

在結構上,雖然超級計算機和伺服器都可能是多處理器系統,二者並無實質區別,但是現代超級計算機較多採用集群系統,更注重浮點運算的性能,可看著是一種專注於科學計算的高性能伺服器,而且價格非常昂貴。

一般的超級計算器耗電量相當大,一秒鍾電費就要上千,超級計算器的CPU至少50核也就是說是家用電腦的10倍左右,處理速度也是相當的快,但是這種CPU是無法購買的,而且價格要上千萬。

⑶ Apache伺服器優化方法小結

Apache伺服器優化
這個一些個人的總結,加上一些前輩的經驗, 下面的優化總的來講,在我使用的一年多中,還是相當有用的,優化和不優化還是比較明顯的.
下面開始正題
ExtendedStatus On 因為寫入額外的時間標志,設off。
MPM:worker-多進程多線程新型設計,適合高流量服務,但是不穩定,對象php之類支持非常差,不推薦, prefork-穩定,無線程,佔用較多內存。
HostnameLookups off 關掉,這樣少一dns查詢,日誌處理可以另外用軟體。
注釋LoadMoule指令中不要的模塊。
一般說來,不需要的模塊包括:
復制代碼
  
代碼如下:
LoadMole auth_basic_mole moles/mod_auth_basic.so
  #LoadMole auth_digest_mole moles/mod_auth_digest.so
  LoadMole authn_file_mole moles/mod_authn_file.so
  #LoadMole authn_alias_mole moles/mod_authn_alias.so
  LoadMole authn_anon_mole moles/mod_authn_anon.so
  #LoadMole authn_dbm_mole moles/mod_authn_dbm.so
  LoadMole authn_default_mole moles/mod_authn_default.so
  LoadMole authz_host_mole moles/mod_authz_host.so
  LoadMole authz_user_mole moles/mod_authz_user.so
  LoadMole authz_owner_mole moles/mod_authz_owner.so
  LoadMole authz_groupfile_mole moles/mod_authz_groupfile.so
  #LoadMole authz_dbm_mole moles/mod_authz_dbm.so
  LoadMole authz_default_mole moles/mod_authz_default.so
  LoadMole ldap_mole moles/mod_ldap.so
  #LoadMole authnz_ldap_mole moles/mod_authnz_ldap.so
  LoadMole include_mole moles/mod_include.so
  LoadMole log_config_mole moles/mod_log_config.so
  LoadMole logio_mole moles/mod_logio.so
  LoadMole env_mole moles/mod_env.so
  LoadMole ext_filter_mole moles/mod_ext_filter.so
  LoadMole mime_magic_mole moles/mod_mime_magic.so
  LoadMole expires_mole moles/mod_expires.so
  LoadMole deflate_mole moles/mod_deflate.so
  LoadMole headers_mole moles/mod_headers.so
  LoadMole usertrack_mole moles/mod_usertrack.so
  LoadMole setenvif_mole moles/mod_setenvif.so
  LoadMole mime_mole moles/mod_mime.so
  #LoadMole dav_mole moles/mod_dav.so
  LoadMole status_mole moles/mod_status.so
  LoadMole autoindex_mole moles/mod_autoindex.so
  LoadMole info_mole moles/mod_info.so
  #LoadMole dav_fs_mole moles/mod_dav_fs.so
  LoadMole vhost_alias_mole moles/mod_vhost_alias.so
  LoadMole negotiation_mole moles/mod_negotiation.so
  LoadMole dir_mole moles/mod_dir.so
  LoadMole actions_mole moles/mod_actions.so
  LoadMole speling_mole moles/mod_speling.so
  #比如:需要在~/username/下調試php可以將
  #LoadMole userdir_mole moles/mod_userdir.so
  LoadMole alias_mole moles/mod_alias.so
  LoadMole rewrite_mole moles/mod_rewrite.so
  #LoadMole proxy_mole moles/mod_proxy.so
  #LoadMole proxy_balancer_mole moles/mod_proxy_balancer.so
  #LoadMole proxy_ftp_mole moles/mod_proxy_ftp.so
  #LoadMole proxy_http_mole moles/mod_proxy_http.so
  #LoadMole proxy_connect_mole moles/mod_proxy_connect.so
  LoadMole cache_mole moles/mod_cache.so
  LoadMole suexec_mole moles/mod_suexec.so
  LoadMole disk_cache_mole moles/mod_disk_cache.so
  LoadMole file_cache_mole moles/mod_file_cache.so
  LoadMole mem_cache_mole moles/mod_mem_cache.so
  #cgi程序用到,象awstats之類需要用到
  LoadMole cgi_mole moles/mod_cgi.so
  LoadMole version_mole moles/mod_version.so
上面只是我總結的部分用不到的,有大俠指點一下還有那些可以不要....
文件夾Directory的選項的優化Options Indexes Includes FollowSymLinks ExecCGI
AllowOverride None
復制代碼ExecCGI 允許執行 CGI 腳本。如果該選項沒有設置,則 CGI 腳本將不能執行。如果沒有必要最好不要開啟,有可能會有安全性問題.
Includes 允許伺服器端包含。伺服器端包含允許一個 HTML 文件包含其他文件。這個平時用不到,他要檢查每個html所以不要開啟.
IncludesNOEXEC 允許伺服器端包含,但 CGI 腳本中的 #exec 和 #include 指令無效。不常用,關掉
Indexes 如果 DirectoryIndex (如 index.html) 在請求的目錄沒存在的話,按一定方式顯示目錄內容列表.這個用的太多了,開啟吧.
FollowSymLinks 最好關掉符號連接,Apache就必須執行額外的系統調用以驗證符號連接。文件名的每一個組成部分都需要一個額外的調用.當打開這個選項時,Apache 將檢查每個請求中是否包含對符號連接的引用,這將對請求中包含的每個路徑調用一次lstat()系統調用。在請求"/index.html" 時,Apache將對"/www"、"/www/htdocs"、"/www/htdocs/index.html"執行lstat()調用。而且 lstat()的執行結果不被緩存,因此對每一個請求都要執行一次。除非你准備使用符號連接,否則用 Options -FollowSymLinks 來關掉它。 用一個破折號引導,從而禁用此指令。
AllowOverride 這個選項,是開啟如包括htaccess來進行許可權控制,Apache必需首先在當前目錄中查找是否存在這個文件,如果存在就解析這個文件並在當前目錄中應用文件中的設置。更壞的是,Apache不僅要查看當前的目錄,還要查看當前目錄的所有上層目錄是否包括htaccess文件以根據所有這些文件最終確定設置。例如請求"/index.html",則Apache會試圖打開"/.htaccess"、"/www/.htaccess"、"/www /htdocs/.htaccess"。其解決方法 AllowOverride None來關掉,當然,這樣做靜態化就只能寫在VH的配置中了,禁用後設置文件僅在伺服器啟動時解析一次 。
DirectoryIndex index*,不要使用通配符,全用完整列表,如irectoryIndex index.cgi index.pl index.shtml index.html。當然,最少好些,明確的指定設置文件列表,放在最前最合理。
啟用了持久鏈接Keepalive,這樣子進程將保持忙碌狀態以等待被打開連接上的新請求。如果開啟KeepAliveTimeout的默認值被設置為5秒。最好不要大於60秒。
禁用日誌
寫入日誌信息是一個很花費時間的工作,盡管Apache保持日誌文件的打開狀態以節省打開文件的時間,但仍然得花費不少的時間。如果沒有必要存儲日誌信息,你可以關閉這個選項以節省出更多的處理器時間,只需要在設置文件中把日誌那一行注釋掉就可以關掉它。當然,實在需要,最要加入另一個單盤來管理日誌存儲.
靜態內容方面
如果你的WEB伺服器使用了大量靜態內容或者你分別用兩個WEB伺服器處理動態和靜態內容,那麼你現在的主要目標就是縮短伺服器發送被請求內容的響應時間,最簡單的方法就是使用mod_cache緩存模塊。你可以使用mod_disk_cache和mod_mem_cache來分別提供基於磁碟的緩存和基於內存的緩存。
優化動態內容
動態內容可能是所有WEB伺服器中最消費時間的部分,特別是使用CGI的時候,一個簡單的程序都可能會把響應時間增加好幾秒。
使用基於腳本的方案的一大好處是它們在Apache里裝入了解釋器,這就減少了執行時再裝入解釋器的時間,一些方案還把解析過的腳本緩存起來,這樣下一次遇到同樣的請求就可以直接執行而無需再次解析。當然也可以應用的服務分離,象使用php的fastcgi來在後面跑,前面給Web伺服器.
對特定系統的調整優化很復雜而且很花時間,而且你需要調整特定的腳本以利用優化的成果。
不過對動態內容的優化效果是非常明顯的,僅僅是把perl腳本的執行模式從CGI轉到mod_perl就可以減少多達70%的執行時間,如果我們進一步,還可以使用到資料庫的持久連接或在多次請求之間緩存信息,這對電子商務網站非常有用,它也減小了不同請求間重復裝載信息的開銷。
總的來講,網站的動態內容腳本和CGI是影響網站性能的最重要方面(所以好的程序員很重要),如果你管理一個典型的Apache伺服器你會發現Apache響應一個傳入連接以及最後把內容發送給客戶的所花費的時間是以毫秒記的,而等待所需數據資源的時間常常達到幾秒鍾。
其它優化
可以把 Apache(httpd)的優先順序改為 -15,這已經接近上限(優先順序從最高的 -20 到最低的 19)。可以從命令行使用這兩個實用程序:
* 要想停止現有服務並以優先順序 -15 重新啟動它,可以發出命令 nice -15 httpd
* 要想避免停止服務,可以發出命令 renice -15 -p 1996
這里的差異是 renice 需要進程 ID(或 pid)。如上所述,可以使用 top 查明 pid。nice 和 renice 是很靈活的程序
配置mod_expires模塊(這個非常有用的優化哦)
mod_expires可以減少20-30%左右的重復請求,讓重復的用戶對指定的頁面請求結果都CACHE在本地,根本不向伺服器發出請求。除開用戶有發送no-cache才會更新,但要注意更新快的文件不要這么做.
mod_expires的安裝配置:
復制代碼
  
代碼如下:
ExpiresActive On
  ExpiresDefault A60
  ExpiresByType image/x-icon A2592000
  ExpiresByType application/x-javascript A2592000
  ExpiresByType text/css A2592000
  ExpiresByType image/gif A604800
  ExpiresByType image/png A604800
  ExpiresByType image/jpeg A604800
  ExpiresByType text/plain A604800
  ExpiresByType application/x-shockwave-flash A604800
  ExpiresByType video/x-flv A604800
  ExpiresByType application/pdf A604800
  ExpiresByType text/html A60
其實還有一個壓縮,我就不寫了,見我另外的那個文章
http://www.php-oa.com/2008/08/20/gzipsquid.html 壓縮比率可以高到70%,非常有用的.
另外高速的web服務,就可以把noatime參數加入/etc/fstab文件中
lnux文件系統當文件被訪問,創建,更新的時候會保留紀錄。默認的,當文件讀寫操作的時候,系統會更新last-time-read屬性。因為寫操作是比較耗費資源的操作,減少不必要的i/o可以整體上提高磁碟性能。
在掛接文件系統的時候,加入noatime參數可以禁止inode節點訪問時間的修改。如果文件更新時間對於特定的應用不是很重要的話,比如web服務,就可以把noatime參數加入/etc/fstab文件中
比如:
/dev/sdb1 /mountlocation ext3 defaults,noatime 1 2
推薦利用單獨的分區作為掛接點並打開noatime開關
也可以關掉的服務(這個好象誰都明白),apmd,autofs,cups,hpoj.isdn,pcmcia,rhnsd,sendmail,xfs(字體服務)
打開重用TCP/IP中的time-wait套接
sysctl -w net.ipv4.tcp_tw_reuse=1
啟動TIME-WAIT 套接字狀態的快速循環功能
sysctl =w net.ipv4.tcp_tw_recycle=1
這個一些個人的總結,加上一些前輩的經驗, 下面的優化總的來講,在我使用的一年多中,還是相當有用的,優化和不優化還是比較明顯的.
下面開始正題
ExtendedStatus On 因為寫入額外的時間標志,設off。
MPM:worker-多進程多線程新型設計,適合高流量服務,但是不穩定,對象php之類支持非常差,不推薦, prefork-穩定,無線程,佔用較多內存。
HostnameLookups off 關掉,這樣少一dns查詢,日誌處理可以另外用軟體。
注釋LoadMoule指令中不要的模塊。
一般說來,不需要的模塊包括:
LoadMole auth_basic_mole moles/mod_auth_basic.so
#LoadMole auth_digest_mole moles/mod_auth_digest.so
LoadMole authn_file_mole moles/mod_authn_file.so
#LoadMole authn_alias_mole moles/mod_authn_alias.so
LoadMole authn_anon_mole moles/mod_authn_anon.so
#LoadMole authn_dbm_mole moles/mod_authn_dbm.so
LoadMole authn_default_mole moles/mod_authn_default.so
LoadMole authz_host_mole moles/mod_authz_host.so
LoadMole authz_user_mole moles/mod_authz_user.so
LoadMole authz_owner_mole moles/mod_authz_owner.so
LoadMole authz_groupfile_mole moles/mod_authz_groupfile.so
#LoadMole authz_dbm_mole moles/mod_authz_dbm.so
LoadMole authz_default_mole moles/mod_authz_default.so
LoadMole ldap_mole moles/mod_ldap.so
#LoadMole authnz_ldap_mole moles/mod_authnz_ldap.so
LoadMole include_mole moles/mod_include.so
LoadMole log_config_mole moles/mod_log_config.so
LoadMole logio_mole moles/mod_logio.so
LoadMole env_mole moles/mod_env.so
LoadMole ext_filter_mole moles/mod_ext_filter.so
LoadMole mime_magic_mole moles/mod_mime_magic.so
LoadMole expires_mole moles/mod_expires.so
LoadMole deflate_mole moles/mod_deflate.so
LoadMole headers_mole moles/mod_headers.so
LoadMole usertrack_mole moles/mod_usertrack.so
LoadMole setenvif_mole moles/mod_setenvif.so
LoadMole mime_mole moles/mod_mime.so
#LoadMole dav_mole moles/mod_dav.so
LoadMole status_mole moles/mod_status.so
LoadMole autoindex_mole moles/mod_autoindex.so
LoadMole info_mole moles/mod_info.so
#LoadMole dav_fs_mole moles/mod_dav_fs.so
LoadMole vhost_alias_mole moles/mod_vhost_alias.so
LoadMole negotiation_mole moles/mod_negotiation.so
LoadMole dir_mole moles/mod_dir.so
LoadMole actions_mole moles/mod_actions.so
LoadMole speling_mole moles/mod_speling.so
#比如:需要在~/username/下調試php可以將
#LoadMole userdir_mole moles/mod_userdir.so
LoadMole alias_mole moles/mod_alias.so
LoadMole rewrite_mole moles/mod_rewrite.so
#LoadMole proxy_mole moles/mod_proxy.so
#LoadMole proxy_balancer_mole moles/mod_proxy_balancer.so
#LoadMole proxy_ftp_mole moles/mod_proxy_ftp.so
#LoadMole proxy_http_mole moles/mod_proxy_http.so
#LoadMole proxy_connect_mole moles/mod_proxy_connect.so
LoadMole cache_mole moles/mod_cache.so
LoadMole suexec_mole moles/mod_suexec.so
LoadMole disk_cache_mole moles/mod_disk_cache.so
LoadMole file_cache_mole moles/mod_file_cache.so
LoadMole mem_cache_mole moles/mod_mem_cache.so
#cgi程序用到,象awstats之類需要用到
LoadMole cgi_mole moles/mod_cgi.so
LoadMole version_mole moles/mod_version.so
上面只是我總結的部分用不到的,有大俠指點一下還有那些可以不要….
文件夾Directory的選項的優化
Options Indexes Includes FollowSymLinks ExecCGI
AllowOverride None
ExecCGI 允許執行 CGI 腳本。如果該選項沒有設置,則 CGI 腳本將不能執行。如果沒有必要最好不要開啟,有可能會有安全性問題.
Includes 允許伺服器端包含。伺服器端包含允許一個 HTML 文件包含其他文件。這個平時用不到,他要檢查每個html所以不要開啟.
IncludesNOEXEC 允許伺服器端包含,但 CGI 腳本中的 #exec 和 #include 指令無效。不常用,關掉
Indexes 如果 DirectoryIndex (如 index.html) 在請求的目錄沒存在的話,按一定方式顯示目錄內容列表.這個用的太多了,開啟吧.
FollowSymLinks 最好關掉符號連接,Apache就必須執行額外的系統調用以驗證符號連接。文件名的每一個組成部分都需要一個額外的調用.當打開這個選項時,Apache將檢查每個請求中是否包含對符號連接的引用,這將對請求中包含的每個路徑調用一次lstat()系統調用。在請求"/index.html"時,Apache將對"/www"、"/www/htdocs"、"/www/htdocs/index.html"執行lstat()調用。而且lstat()的執行結果不被緩存,因此對每一個請求都要執行一次。除非你准備使用符號連接,否則用 Options -FollowSymLinks 來關掉它。 用一個破折號引導,從而禁用此指令。
AllowOverride 這個選項,是開啟如包括htaccess來進行許可權控制,Apache必需首先在當前目錄中查找是否存在這個文件,如果存在就解析這個文件並在當前目錄中應用文件中的設置。更壞的是,Apache不僅要查看當前的目錄,還要查看當前目錄的所有上層目錄是否包括htaccess文件以根據所有這些文件最終確定設置。例如請求"/index.html",則Apache會試圖打開"/.htaccess"、"/www/.htaccess"、"/www/htdocs/.htaccess"。其解決方法 AllowOverride None來關掉,當然,這樣做靜態化就只能寫在VH的配置中了,禁用後設置文件僅在伺服器啟動時解析一次 。
DirectoryIndex index*,不要使用通配符,全用完整列表,如:DirectoryIndex index.cgi index.pl index.shtml index.html。當然,最少好些,明確的指定設置文件列表,放在最前最合理。
啟用了持久鏈接Keepalive,這樣子進程將保持忙碌狀態以等待被打開連接上的新請求。如果開啟KeepAliveTimeout的默認值被設置為5秒。最好不要大於60秒。
禁用日誌
寫入日誌信息是一個很花費時間的工作,盡管Apache保持日誌文件的打開狀態以節省打開文件的時間,但仍然得花費不少的時間。如果沒有必要存儲日誌信息,你可以關閉這個選項以節省出更多的處理器時間,只需要在設置文件中把日誌那一行注釋掉就可以關掉它。當然,實在需要,最要加入另一個單盤來管理日誌存儲.
靜態內容方面
如果你的WEB伺服器使用了大量靜態內容或者你分別用兩個WEB伺服器處理動態和靜態內容,那麼你現在的主要目標就是縮短伺服器發送被請求內容的響應時間,最簡單的方法就是使用mod_cache緩存模塊。你可以使用mod_disk_cache和mod_mem_cache來分別提供基於磁碟的緩存和基於內存的緩存。
優化動態內容
動態內容可能是所有WEB伺服器中最消費時間的部分,特別是使用CGI的時候,一個簡單的程序都可能會把響應時間增加好幾秒。
使用基於腳本的方案的一大好處是它們在Apache里裝入了解釋器,這就減少了執行時再裝入解釋器的時間,一些方案還把解析過的腳本緩存起來,這樣下一次遇到同樣的請求就可以直接執行而無需再次解析。當然也可以應用的服務分離,象使用php的fastcgi來在後面跑,前面給Web伺服器.
對特定系統的調整優化很復雜而且很花時間,而且你需要調整特定的腳本以利用優化的成果。
不過對動態內容的優化效果是非常明顯的,僅僅是把perl腳本的執行模式從CGI轉到mod_perl就可以減少多達70%的執行時間,如果我們進一步,還可以使用到資料庫的持久連接或在多次請求之間緩存信息,這對電子商務網站非常有用,它也減小了不同請求間重復裝載信息的開銷。
總的來講,網站的動態內容腳本和CGI是影響網站性能的最重要方面(所以好的程序員很重要),如果你管理一個典型的Apache伺服器你會發現Apache響應一個傳入連接以及最後把內容發送給客戶的所花費的時間是以毫秒記的,而等待所需數據資源的時間常常達到幾秒鍾。
其它優化
配置mod_expires模塊(這個非常有用的優化哦)
mod_expires可以減少20-30%左右的重復請求,讓重復的用戶對指定的頁面請求結果都CACHE在本地,根本不向伺服器發出請求。除開用戶有發送no-cache才會更新,但要注意更新快的文件不要這么做.
mod_expires的安裝配置:
ExpiresActive On
ExpiresDefault A60
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A60
其實還有一個壓縮,我就不寫了,見我另外的那個文章Gzip在apache2中的設置和squid對它的處理
http://www.php-oa.com/2008/08/20/gzipsquid.html 壓縮比率可以高到70%,非常有用的.
另外高速的web服務,就可以把noatime參數加入/etc/fstab文件中
lnux文件系統當文件被訪問,創建,更新的時候會保留紀錄。默認的,當文件讀寫操作的時候,系統會更新last-time-read屬性。因為寫操作是比較耗費資源的操作,減少不必要的i/o可以整體上提高磁碟性能。
在掛接文件系統的時候,加入noatime參數可以禁止inode節點訪問時間的修改。如果文件更新時間對於特定的應用不是很重要的話,比如web服務,就可以把noatime參數加入/etc/fstab文件中
比如:
/dev/sdb1 /mountlocation ext3 defaults,noatime 1 2
推薦利用單獨的分區作為掛接點並打開noatime開關
也可以關掉的服務(這個好象誰都明白),apmd,autofs,cups,hpoj.isdn,pcmcia,rhnsd,sendmail,xfs(字體服務)
打開重用TCP/IP中的time-wait套接
sysctl -w net.ipv4.tcp_tw_reuse=1
啟動TIME-WAIT 套接字狀態的快速循環功能
sysctl =w net.ipv4.tcp_tw_recycle=1
下面這個大家也可以了解一下,很久前的文章了

⑷ 資料庫的ha模式是什麼

高可用(HA)性有兩種不同的含義,在廣義環境中是指整個系統的高可用性,在狹義方面一般指主機、服務的冗餘,如主機HA、應用程序的HA等,無論那種情況,高可用性都可以包含如下一些方面:
1、 系統失敗或崩潰;
2、 應用層或者中間層錯誤;
3、網路失敗;
4、 介質失敗:指一些存放數據的媒體介質故障;
5、 人為錯誤;
6、 系統的容災備份;
7、 計劃內的維護或者重啟。
可見,高可用性不僅包含了系統本身故障、應用層的故障、網路故障、認為操作的錯誤等,還包含數據的冗餘、容災及計劃的維護時間等,也就是說一個真正的高可用環境,不僅能避免系統本身的問題,還應該能防止天災、人禍,並且有一個可靠的系統升級及計劃維護操作。

⑸ 深入解析Ubuntu操作系統的目錄

第Ⅰ部分 安裝與配置
第1章 Ubuntu概述
1.1 什麼是Ubuntu
1.1.1 Ubuntu內部
1.1.2 Ubuntu的安裝特點
1.1.3 Ubuntu文件系統的特點
1.2 Ubuntu的商業應用
1.3 Ubuntu的個人應用
1.4 64位Ubuntu
1.5 基於PPC平台的Ubuntu
1.6 基於雙核處理器的Ubuntu
1.7 充分利用Ubuntu與Linux的文檔
1.8 Ubuntu開發者與文檔
1.9 閱讀參考
第2章 安裝Ubuntu前的准備
2.1 計劃Ubuntu的部署方案
2.1.1 商業部署需要考慮的因素
2.1.2 系統部署需要考慮的因素
2.1.3 用戶因素
2.1.4 預部署計劃的核對表
2.1.5 安裝計劃
2.2 硬體需求
2.2.1 安裝Ubuntu的最低硬體配置
2.2.2 在遺留的設備上安裝Ubuntu
2.2.3 為Ubuntu安裝分配硬碟空間
2.2.4 檢查硬體的兼容性
2.2.5 為潛在的硬體問題做准備
2.2.6 准備並使用硬體列表
2.3 安裝過程的准備
2.4 安裝前與安裝過程中的硬碟分區操作
2.4.1 選擇分區方案
2.4.2 將Linux文件系統安排到各個分區上
2.5 使用Ubuntu的kickstart安裝方式
2.6 閱讀參考
第3章 安裝Ubuntu
3.1 開始安裝前的准備
3.1.1 檢查硬體規格
3.1.2 安裝選項
3.1.3 計劃分區策略
3.1.4 引導程序
3.1.5 本地光碟安裝
3.2 逐步安裝
3.2.1 開始安裝
3.2.2 首次更新
3.3 關機
3.4 閱讀參考
第4章 安裝後的配置
4.1 安裝後配置問題的故障診斷
4.2 sudo命令
4.3 首次更新
4.4 配置軟體源
4.5 安裝顯卡驅動
4.6 更改Ubuntu的桌面風格
4.6.1 更改桌面背景
4.6.2 更改顏色
4.6.3 更改系統字體
4.7 首選行為
4.7.1 首選應用程序
4.7.2 Removable Drives and Media
4.8 輸入設備
4.8.1 鍵盤快捷鍵
4.8.2 鍵盤布局
4.8.3 滑鼠
4.9 檢測與配置數據機
4.9.1 配置串口數據機
4.9.2 為筆記本電腦配置WinModem
4.10 配置Ubuntu中的電源管理
4.11 重設日期和時間
4.11.1 使用date命令
4.11.2 使用hwclock命令
4.11.3 更改時間和日期
4.12 管理PCMCIA
4.12.1 使用PCMCIA
4.12.2 控制PCMCIA服務
4.13 配置與使用CD. DVD和CD-RW光碟機
4.14 配置無線網路
4.15 配置Firestarter
4.16 閱讀參考
第5章 Ubuntu初步
5.1 使用Linux文件系統
5.1.1 查看Linux文件系統
5.1.2 使用/bin和/sbin目錄下的基本命令
5.1.3 在/boot目錄和/dev目錄中存儲引導的內核和查看存儲設備
5.1.4 使用和編輯/etc目錄下的文件
5.1.5 保護用戶目錄/home中的內容
5.1.6 使用/proc目錄的內容與內核進行交互
5.1.7 使用/usr目錄下的共享數據
5.1.8 在/tmp目錄下存儲臨時文件
5.1.9 訪問/var目錄下的可變數據文件
5.2 登錄與使用Linux
5.2.1 基於文本的控制台登錄
5.2.2 使用虛擬控制台
5.2.3 在Linux控制台會話中使用簡單的鍵盤和滑鼠技巧
5.2.4 退出
5.2.5 從遠程計算機登錄與退出
5.3 修改用戶信息
5.4 閱讀文檔
5.4.1 使用手冊頁
5.4.2 查找和閱讀軟體包文檔
5.5 使用shell
5.5.1 使用環境變數
5.5.2 使用shell導航和搜索
5.5.3 使用shell管理文件
5.5.4 通過shell壓縮和解壓的文件
5.6 使用文本編輯器
5.6.1 使用vi
5.6.2 使用emacs
5.7 使用許可權
5.7.1 指派許可權
5.7.2 目錄許可權
5.7.3 理解設置用戶ID和設置組ID許可權
5.8 以root用戶身份工作
5.8.1 創建用戶
5.8.2 刪除用戶
5.8.3 關閉系統
5.8.4 重啟系統
5.9 閱讀參考
第6章 X Window系統
6.1 X的基本概念
6.2 使用X11R7
6.2.1 xorg.conf文件的元素
6.2.2 配置X
6.3 啟動X
6.3.1 使用顯示管理器
6.3.2 通過使用startx從控制台啟動X
6.4 選擇和使用窗口管理器
6.5 GNOME和KDE桌面環境
6.5.1 GNU網路對象模型環境GNOME)
6.5.2 K桌面環境(KD)
6.5.3 Xfce:備選的輕量級桌面環境
6.6 閱讀參考
第7章 管理軟體
7.1 使用Add/Remove Applications管理軟體
7.2 使用Synaptic管理軟體
7.3 保持最新
7.4 使用命令行
7.4.1 日常使用
7.4.2 查找軟體
7.5 從源代碼編譯軟體
7.6 閱讀參考
第8章 Internet應用:Web沖浪. 寫郵件. 讀新聞
8.1 選擇Web瀏覽器
8.1.1 Mozilla Firefox
8.1.2 Mozilla Suite
8.1.3 Epiphany
8.1.4 Konqueror
8.2 選擇電子郵件客戶端
8.2.1 Evolution
8.2.2 Mozilla Thunderbird
8.2.3 Balsa
8.2.4 KMail
8.2.5 Mozilla Mail
8.2.6 mail應用程序
8.2.7 mutt
8.2.8 其他郵件客戶端
8.3 網路新聞概述
8.4 選擇新聞閱讀器
8.4.1 slrn新聞客戶端
8.4.2 Pan新聞客戶端
8.4.3 Mozilla新聞客戶端
8.4.4 Thunderbird新聞客戶端
8.5 Internet Relay Chat
8.6 GAIM IM
8.7 使用Ekiga進行視頻會議
8.8 閱讀參考
第9章 生產應用程序
9.1 Ubuntu中的辦公套件
9.1.1 使用OpenOffice.org
9.1.2 使用OpenOffice.org Writer
9.1.3 使用OpenOffice.org Calc
9.1.4 使用GNOME Office
9.1.5 使用KOffice
9.2 為Microsoft Windows編寫的生產應用程序
9.3 閱讀參考
第10章 多媒體應用
10.1 在Ubuntu中燒錄CD和DVD
10.1.1 從命令行創建CD
10.1.2 從命令行創建DVD
10.1.3 使用Ubuntu的圖形界面客戶端創建CD和DVD
10.2 聲音和音樂
10.2.1 音效卡
10.2.2 錄音
10.2.3 聲音格式
10.2.4 翻錄音樂
10.2.5 音樂播放器
10.2.6 流式音頻
10.3 觀看電視和視頻
10.3.1 電視和視頻硬體
10.3.2 視頻格式
10.3.3 在Linux中觀看視頻
10.3.4 使用Linux觀看電視
10.3.5 個人錄像機
10.3.6 DVD和視頻播放器
10.4 閱讀參考
第11章 圖形處理
11.1 在Ubuntu中使用數碼相機
11.1.1 網路攝像頭
11.1.2 手持式數碼相機
11.1.3 使用F-Spot
11.2 在Ubuntu中使用掃描儀
11.2.1 使用圖形格式
11.2.2 捕獲屏幕圖像
11.3 閱讀參考
第12章 Ubuntu列印
12.1 Ubuntu列印概述
12.2 配置和管理列印服務
12.2.1 快速完成基於GUI的列印機配置
12.2.2 管理列印服務
12.3 創建和配置本地列印機
12.3.1 創建列印隊列
12.3.2 編輯列印機設置
12.4 閱讀參考
第13章 游戲
13.1 Linux游戲
13.1.1 安裝專有顯卡驅動程序
13.1.2 安裝DOOM 3
13.1.3 安裝Unreal Tournament 2004
13.1.4 安裝Quake 4
13.1.5 安裝Wolfenstein: Enemy Territory
13.1.6 安裝Battle for Wesnoth
13.1.7 使用Cedega玩Windows游戲
13.2 閱讀參考
第Ⅱ部分 系統管理
第14章 管理用戶
14.1 用戶賬戶
14.1.1 用戶ID和組ID
14.1.2 文件訪問許可權
14.2 用戶組管理
14.3 用戶管理
14.3.1 用戶管理工具
14.3.2 添加新用戶
14.3.3 監視用戶在系統上的行為
14.4 口令管理
14.4.1 系統口令策略
14.4.2 口令文件
14.4.3 shadow口令
14.4.4 管理用戶口令的安全性
14.4.5 用戶口令的批量更改
14.5 許可權提升
14.5.1 用su命令臨時改變用戶身份
14.5.2 適時地用sudo命令獲取root許可權
14.5.3 用受限shell控制用戶許可權
14.6 用戶登錄過程
14.7 磁碟配額
14.7.1 使用磁碟配額
14.7.2 手動配置磁碟配額
14.8 閱讀參考
第15章 自動執行任務
15.1 自啟動服務
15.1.1 開始啟動載入過程
15.1.2 載入Linux內核
15.1.3 系統服務和運行級別
15.1.4 運行級別的定義
15.1.5 啟動到默認運行級別
15.1.6 用GRUB啟動到非默認的運行級別
15.1.7 理解init腳本以及初始化的最後步驟
15.1.8 用管理工具控制自啟動服務
15.1.9 改變運行級別
15.1.10 利用運行級別排除故障
15.2 手動啟動和停止服務
15.3 計劃任務
15.3.1 使用at和batch命令制定計劃任務
15.3.2 使用cron命令重復執行任務
15.4 shell控制基礎
15.4.1 shell命令行
15.4.2 在shell中進行模式匹配
15.4.3 輸入輸出的重定向
15.4.4 管道數據
15.4.5 後台處理
15.5 編寫和執行shell腳本
15.5.1 運行shell腳本程序
15.5.2 系統啟動時自動載入shell腳本
15.5.3 使用指定的命令行解釋器運行shell腳本
15.5.4 在腳本中使用變數
15.5.5 給變數賦值
15.5.6 獲取變數的值
15.5.7 位置參數
15.5.8 位置參數實例
15.5.9 使用位置參數從命令行獲取變數
15.5.10 使用簡單的腳本自動執行任務
15.5.11 內置變數
15.5.12 特殊字元
15.5.13 用雙引號處理字元串中含有空格的變數
15.5.14 用單引號保留未被擴展的變數
15.5.15 使用反斜杠作為逃逸符號
15.5.16 使用backtick符號
15.5.17 pdksh和bash中的表達式比較
15.5.18 tcsh中的表達式比較
15.5.19 for語句
15.5.20 while語句
15.5.21 until語句
15.5.22 repeat語句(tcsh)
15.5.23 select語句(pdksh)
15.5.24 shift語句
15.5.25 if語句
15.5.26 case語句
15.5.27 break和exit語句
15.5.28 在shell腳本中使用函數
15.6 閱讀參考
第16章 系統資源
16.1 系統監視工具
16.1.1 控制台環境下的系統監視
16.1.2 使用kill命令控制進程
16.1.3 進程優先順序調度與控制
16.1.4 使用free命令顯示內存使用情況
16.1.5 磁碟配額
16.1.6 圖形界面的進程和系統管理工具
16.1.7 KDE桌面環境的進程和系統監視工具
16.2 閱讀參考
第17章 備份. 還原和恢復
17.1 選擇合適的備份策略
17.1.1 為什麼會丟失數據
17.1.2 備份需求與所需資源的評估
17.1.3 如何評價備份策略的好壞
17.1.4 做出選擇
17.2 選擇備份硬體和介質
17.2.1 可移動存儲介質
17.2.2 網路存儲
17.2.3 磁帶驅動器備份
17.3 使用備份軟體
17.3.1 tar:最基本的備份工具
17.3.2 GNOME中的File Roller軟體
17.3.3 KDE中的歸檔工具(KDE ark和kdat)
17.3.4 使用dd命令歸檔
17.3.5 使用Amanda備份程序
17.3.6 可供選擇的其他備份軟體
17.4 復制文件
17.4.1 用tar命令復制文件
17.4.2 壓縮. 加密和發送tar數據流
17.4.3 用cp命令復制文件
17.4.4 用mc命令復制文件
17.4.5 用scp命令復制文件
17.4.6 用rsync命令復制文件
17.5 恢復被刪除的文件
17.5.1 在遇到未知的文件系統錯誤時使用-S選項重新格式化
17.5.2 用mc命令恢復被刪除的文件
17.6 系統修復
17.6.1 Ubuntu系統修復盤
17.6.2 備份和恢復主引導記錄
17.6.3 從普通的可引導軟盤啟動系統
17.6.4 使用GRUB可引導軟盤
17.6.5 使用系統恢復功能
17.7 閱讀參考
第18章 網路連接
18.1 基礎:localhost介面
18.1.1 檢查loopback介面是否可用
18.1.2 手動配置loopback介面
18.2 TCP/IP網路
18.2.1 TCP/IP地址
18.2.2 在Ubuntu中使用IP偽裝技術
18.2.3 埠
18.3 網路結構
18.3.1 子網劃分
18.3.2 子網掩碼
18.3.3 廣播. 單播和多播地址
18.4 網路硬體設備
18.4.1 網卡
18.4.2 網線
18.4.3 集線器和交換機
18.4.4 路由器和網橋
18.4.5 初始化新的網路硬體
18.5 使用網路配置工具
18.5.1 在命令行中配置網路介面
18.5.2 網路配置文件
18.5.3 使用圖形界面配置工具
18.6 動態主機配置協議
18.6.1 DHCP工作原理
18.6.2 在安裝和啟動時激活DHCP
18.6.3 DHCP軟體的安裝和配置
18.6.4 使用DHCP配置網路主機
18.6.5 DHCP的其他用途
18.7 無線網路
18.7.1 Ubuntu對無線網路的支持..
18.7.2 無線網路的優勢
18.7.3 從現有的無線網路協議中選擇合適的協議
18.8 連接Internet
18.9 通用的配置信息
18.10 配置數字用戶線路訪問Internet
18.10.1 理解乙太網上的點對點協議
18.10.2 手動配置PPPoE連接
18.11 配置撥號Internet訪問
18.12 排除連接故障
18.13 閱讀參考
18.13.1 通用
18.13.2 DHCP
18.13.3 無線網路
18.13.4 書籍
第19章 使用ssh和telnet進行遠程訪問
19.1 架設Telnet伺服器
19.2 Telnet與SSH的對比
19.3 架設SSH伺服器
19.4 SSH工具
19.4.1 使用scp在計算機之間復制單個文件
19.4.2 使用sftp在計算機之間復制多個文件
19.4.3 使用ssh-keygen啟動Key-based登錄方式
19.5 遠程X圖形環境
19.5.1 XDMCP
19.5.2 VNC
19.6 閱讀參考
第Ⅲ部分 伺服器應用
第20章 Apache Web伺服器管理
20.1 Apache Web伺服器簡介
20.2 安裝Apache伺服器
20.2.1 使用APT安裝
20.2.2 親自從源代碼構建
20.3 啟動與停止Apache
20.3.1 手動啟動Apache伺服器
20.3.2 使用/etc/init.d/apache2
20.4 設置運行時伺服器配置
20.4.1 運行時配置指令
20.4.2 編輯httpd.conf
20.4.3 Apache多處理模塊
20.4.4 使用.htaccess配置文件
20.5 文件系統認證與訪問控制
20.5.1 使用allow和deny限制訪問
20.5.2 認證
20.5.3 關於訪問控制的結束語
20.6 Apache模塊
20.6.1 mod_access
20.6.2 mod_alias
20.6.3 mod_asis
20.6.4 mod_auth
20.6.5 mod_auth_anon
20.6.6 mod_auth_dbm
20.6.7 mod_auth_digest
20.6.8 mod_autoindex
20.6.9 mod_cgi
20.6.10 mod_dir和mod_env
20.6.11 mod_expires
20.6.12 mod_headers
20.6.13 mod_include
20.6.14 mod_info和mod_log_config
20.6.15 mod_mime和mod_mime_magic
20.6.16 mod_negotiation
20.6.17 mod_proxy
20.6.18 mod_rewrite
20.6.19 mod_setenvif
20.6.20 mod_speling
20.6.21 mod_status
20.6.22 mod_ssl
20.6.23 mod_unique_id
20.6.24 mod_userdir
20.6.25 mod_usertrack
20.6.26 mod_vhost_alias
20.7 虛擬主機
20.7.1 基於地址的虛擬主機
20.7.2 基於名字的虛擬主機
20.8 日誌
20.9 動態內容
20.9.1 CGI
20.9.2 SSI
20.9.3 基本的SSI指令
20.9.4 流程式控制制
20.10 可在Ubuntu中使用的其他Web伺服器
20.10.1 Sun ONE Web伺服器
20.10.2 Zope
20.10.3 Zeus Web伺服器
20.11 閱讀參考
第21章 管理資料庫服務
21.1 簡要回顧資料庫的基本概念
21.1.1 關系資料庫的工作方式
21.1.2 了解SQL的基礎知識
21.1.3 創建表
21.1.4 向表中插入數據
21.1.5 從資料庫中檢索數據
21.2 選擇資料庫:MySQL和PostgreSQL
21.2.1 速度
21.2.2 數據鎖定
21.2.3 在事務處理中用來保護數據完整性的ACID兼容性
21.2.4 SQL子查詢
21.2.5 過程語言與觸發器
21.3 配置MySQL
21.3.1 為MySQL root用戶設置口令
21.3.2 在MySQL中創建資料庫
21.3.3 在MySQL中授予與撤銷特權
21.4 配置PostgreSQL
21.4.1 在PostgreSQL中初始化數據目錄
21.4.2 在PostgreSQL中創建資料庫
21.4.3 在PostgreSQL中創建資料庫用戶
21.4.4 在PostgreSQL中刪除資料庫用戶
21.4.5 在PostgreSQL中授予和撤銷特權
21.5 資料庫客戶端
21.5.1 通過SSH訪問資料庫
21.5.2 通過本地GUI客戶端訪問資料庫
21.5.3 通過Web訪問資料庫
21.5.4 MySQL命令行客戶端
21.5.5 PostgreSQL命令行客戶端
21.5.6 圖形界面的客戶端
21.6 閱讀參考
第22章 文件和列印
22.1 使用網路文件系統
22.1.1 安裝和啟動/停止NFS
22.1.2 NFS伺服器配置
22.1.3 NFS客戶端配置
22.2 讓Samba工作
22.2.1 用/etc/samba/smb.conf手動配置Samba
22.2.2 使用testparm命令測試Samba
22.2.3 啟動smbd守護進程
22.2.4 掛載Samba共享
22.2.5 使用SWAT配置Samba
22.3 使用Ubuntu進行網路和遠程列印
22.3.1 創建網路列印機
22.3.2 在區域網上進行網路列印
22.3.3 任務消息塊列印
22.4 使用通用UNIX列印系統GUI
22.5 避免列印機支持問題
22.5.1 多功能一體機(列印/傳真/掃描)設備
22.5.2 使用USB和老式列印機
22.6 閱讀參考
第23章 FTP遠程文件服務
23.1 使用FTP客戶端
23.1.1 FTP客戶端界面
23.1.2 使用基於文本的FTP客戶端界面
23.1.3 使用圖形界面FTP客戶端
23.2 FTP伺服器
23.2.1 選擇認證的或匿名伺服器
23.2.2 Ubuntu的FTP伺服器包
23.2.3 其他FTP伺服器
23.3 安裝FTP軟體
23.4 FTP用戶
23.5 為wu-ftpd配置inetd
23.6 配置VSFTP伺服器
23.6.1 控制匿名訪問
23.6.2 其他的vsftpd伺服器配置文件
23.6.3 默認的vsftpd行為
23.7 配置Wu-FTPd伺服器
23.8 使用ftpaccess文件中的命令對wu-ftpd進行配置
23.8.1 配置訪問控制
23.8.2 配置用戶信息
23.8.3 配置系統日誌
23.8.4 配置許可權控制
23.8.5 配置定向到cdpath的命令
23.8.6 shutdown文件的結構
23.9 配置FTP伺服器的文件轉換操作
23.9.1 剝離前綴
23.9.2 剝離後綴
23.9.3 添加前綴
23.9.4 添加後綴
23.9.5 外部命令
23.9.6 類型
23.9.7 選項
23.9.8 描述
23.9.9 一個轉換操作的例子
23.10 使用ftphosts文件中的命令允許或禁止FTP 伺服器連接
23.11 伺服器管理
23.11.1 顯示關於連接用戶的信息
23.11.2 計算連接的數目
23.11.3 使用/usr/sbin/ftpshut安排FTP伺服器停機時間
23.11.4 使用/var/log/xferlog查看伺服器事務的日誌
23.12 閱讀參考
第24章 處理電子郵件
24.1 電子郵件是如何發送和接收的
24.1.1 郵件傳輸代理
24.1.2 選擇一個MTA
24.1.3 郵件分發代理
24.1.4 郵件用戶代理
24.2 基本的Postfix配置和操作
24.2.1 配置偽裝
24.2.2 使用智能主機
24.2.3 設置消息傳遞時間間隔
24.2.4 郵件中繼
24.2.5 轉發帶別名的電子郵件
24.3 使用Fetchmail獲取郵件
24.3.1 安裝Fetchmail
24.3.2 配置Fetchmail
24.4 選擇郵件分發代理
24.4.1 Procmail
24.4.2 Spamassassin
24.4.3 Squirrelmail
24.4.4 病毒掃描器
24.5 郵件守護程序
24.6 Microsoft Exchange Server的替代者
24.6.1 Microsoft Exchange Server/Outlook客戶端
24.6.2 CommuniGate Pro
24.6.3 Oracle協作套件
24.6.4 Bynari
24.6.5 Open-Xchange
24.6.6 phpgroupware
24.6.7 PHProjekt
24.6.8 Horde
24.7 閱讀參考
24.7.1 Web資源
24.7.2 參考書目
第25章 代理與反向代理
25.1 什麼是代理伺服器
25.2 安裝Squid
25.3 配置客戶端
25.4 訪問控制列表
25.5 指定客戶端IP地址
25.6 配置示例
25.7 閱讀參考
第26章 LDAP
26.1 配置LDAP伺服器
26.2 配置客戶端
26.2.1 Evolution
26.2.2 Thunderbird
26.3 管理
26.4 閱讀參考
第Ⅳ部分 Linux編程
第27章 使用Perl
27.1 在Linux中使用Perl
27.1.1 Perl的版本
27.1.2 一個簡單的Perl程序
27.2 Perl中的變數和數據結構
27.2.1 Perl的變數類型
27.2.2 特殊變數
27.3 操作符
27.3.1 比較操作符
27.3.2 復合操作符
27.3.3 算術操作符
27.3.4 其他操作符
27.3.5 特殊字元串常量
27.4 條件語句:if/else和unless
27.4.1 if
27.4.2 unless
27.5 循環
27.5.1 for
27.5.2 foreach
27.5.3 while
27.5.4 until
27.5.5 last和next
27.5.6 do…while和do…until
27.6 正則表達式
27.7 訪問shell
27.8 模塊和CPAN
27.9 代碼示例
27.9.1 發送電子郵件
27.9.2 清理日誌
27.9.3 往新聞組發信
27.9.4 單行小程序
27.9.5 命令行處理
27.10 閱讀參考
27.10.1 書目
27.10.2 新聞組
27.10.3 萬維網
27.10.4 其他資源
第28章 使用Python
28.1 Linux中的Python
28.2 Python基礎
28.2.1 數字
28.2.2 進一步討論字元串
28.2.3 列表
28.2.4 字典
28.2.5 條件和循環
28.3 函數
28.4 面向對象
28.4.1 類和對象變數
28.4.2 構造函數和析構函數
28.4.3 類繼承
28.4.4 多重繼承
28.5 標准庫和Vaults of Parnassus
28.6 閱讀參考
第29章 編寫PHP腳本
29.1 PHP入門
29.1.1 進入和退出PHP模式
29.1.2 變數
29.1.3 數組
29.1.4 常量
29.1.5 引用
29.1.6 注釋
29.1.7 轉義序列
29.1.8 變數替換
29.1.9 操作符
29.1.10 條件語句
29.1.11 特殊操作符
29.1.12 switch語句
29.1.13 循環
29.1.14 包含其他文件
29.2 基本函數
29.2.1 字元串
29.2.2 數組
29.2.3 文件
29.2.4 其他函數
29.3 處理HTML表格
29.4 資料庫
29.5 閱讀參考
第30章 Ubuntu中的C/C++ 編程工具
30.1 Linux中的C編程
30.1.1 C++編程
30.1.2 Linux C/C++編程入門
30.1.3 編程的步驟
30.2 C/C++語言的基本元素
30.3 Ubuntu中的C語言編程項目管理工具
30.3.1 使用make構建程序
30.3.2 使用autoconf工具配置代碼
30.3.3 使用RCS和CVS管理軟體項目
30.3.4 調試工具
30.4 使用GNU C編譯器
30.5 一個簡單的C程序
30.6 圖形界面開發工具
30.6.1 使用KDevelop客戶端
30.6.2 Trolltech的Qt Designer
30.6.3 GNOME中的開發工具Glade客戶端
30.7 閱讀參考
第Ⅴ部分 Ubuntu日常維護
第31章 保護您的機器
31.1 了解計算機攻擊
31.2 評估機器的弱點
31.3 保護您的機器
31.3.1 保護無線網路
31.3.2 口令和物理安全
31.3.3 配置和使用Tripwire
31.3.4 設備
31.4 病毒
31.5 配置防火牆
31.6 構建一個災難恢復計劃
31.7 在Linux安全問題上要保持最新
31.8 閱讀參考
第32章 性能調整
32.1 硬碟
32.1.1 使用BIOS和內核來調整磁碟驅動器
32.1.2 hdparm命令
32.1.3 文件系統調整
32.1.4 tune2fs命令
32.1.5 e2fsck命令
32.1.6 badblocks命令
32.1.7 禁止文件訪問時間
32.2 內核
32.3 Apache
32.4 MySQL
32.4.1 衡量關鍵字緩沖區的使用
32.4.2 使用查詢緩存
32.4.3 其他調整
32.4.4 查詢優化
32.5 閱讀參考
第33章 命令行高級班
33.1 為什麼使用Shell
33.2 基本命令
33.2.1 使用cat輸出文件的內容
33.2.2 使用cd改變目錄
33.2.3 使用chmod修改文件訪問許可權
33.2.4 使用cp復制文件
33.2.5 使用輸出磁碟使用情況
33.2.6 通過使用find查找文件
33.2.7 使用grep在輸入中查找字元串
33.2.8 使用less為輸出翻頁
33.2.9 使用ln在文件間創建鏈接
33.2.10 使用locate通過索引查找文件
33.2.11 使用ls命令列出當前目錄下的文件
33.2.12 使用man閱讀用戶手冊頁
33.2.13 使用mkdir創建目錄
33.2.14 使用mv移動文件
33.2.15 使用ps列出進程
33.2.16 使用rm刪除文件和目錄
33.2.17 使用tail輸出文件的最後一行
33.2.18 使用top輸出資源利用率
33.2.19 使用which輸出命令的位置
33.3 將命令組合使用
33.4 多終端
33.5 閱讀參考
第34章 高級APT
34.1 使用Aptitude
34.2 dpkg後端
34.3 配置APT
34.4 閱讀參考
第35章 內核和模塊管理
35.1 Linux內核
35.1.1 Linux源代碼樹
35.1.2 內核的類型
35.2 管理模塊
35.3 何時進行重新編譯
35.4 內核版本
35.5 獲得內核源代碼
35.6 為內核打補丁
35.7 編譯內核
35.7.1 使用xconfig配置內核
35.7.2 創建一個初始的RAM磁碟映像
35.8 當發生故障時
35.8.1 編譯時的錯誤
35.8.2 運行時錯誤. 啟動載入器問題和內核oops
35.9 閱讀參考
第Ⅵ部分 附錄
附錄A Ubuntu和Linux的Internet資源
A.1 Web站點和搜索引擎
A.2 Usenet新聞組
A.3 郵件列表
A.4 Internet Relay Chat

⑹ PHP是什麼類型的文件,該如何使用

PHP,即「PHP: Hypertext Preprocessor」,是一種廣泛用於 Open Source(開放源代碼)的尤其適合 Web 開發並可以嵌入 HTML 的多用途腳本語言。它的語法接近 C,Java 和 Perl,而且容易學習。該語言的主要目標是讓 Web 開發人員快速的書寫動態生成的網頁.
PHP 代碼是運行在服務端的.
它的使用需要你的伺服器安裝php服務.

PHP 能做什麼?
PHP 能做任何事。PHP 主要是用於服務端的腳本程序,因此您可以用 PHP 來完成任何其它的 CGI 程序能夠完成的工作,例如收集表單數據,生成動態網頁,或者發送/接收 Cookies。但 PHP 的功能遠不局限於此。

PHP 腳本主要用於以下三個領域。

服務端腳本。這是 PHP 最傳統,也是最主要的目標領域。開展這項工作您需要具備以下三點:PHP 解析器(CGI 或者伺服器模塊)、WEB 伺服器和 WEB 瀏覽器。您需要在運行 WEB 伺服器時,安裝並配置 PHP,然後,可以用 WEB 瀏覽器來訪問 PHP 程序的輸出,即瀏覽服務端的 PHP 頁面。請查閱「安裝」一章以獲取更多信息。

命令行腳本。您可以編寫一段 PHP 腳本,並且不需要任何伺服器或者瀏覽器來運行它。通過這種方式,您僅僅只需要 PHP 解析器來執行。這種用法對於依賴 cron(Unix 或者 Linux 環境)或者 Task Scheler(Windows 環境)的日常運行的腳本來說是理想的選擇。這些腳本也可以用來處理簡單的文本。請參閱「PHP 的命令行模式」以獲取更多信息。

編寫客戶端的 GUI 應用程序。對於基於窗口式的應用程序來說,PHP 或許不是一種最好的語言,但是如果您非常精通 PHP,並且希望在您的客戶端應用程序中使用 PHP 的一些高級特性,您可以利用 PHP-GTK 來編寫這些程序。用這種方法,您還可以編寫跨平台的應用程序。PHP-GTK 是 PHP 的一個擴展,在通常發布的 PHP 包中並不包含它。如果您對 PHP-GTK 感興趣,請訪問其網站以獲取更多信息。

PHP 能夠用在所有的主流操作系統上,包括 Linux、Unix 的各種變種(包括 HP-UX、Solaris 和 OpenBSD)、Microsoft Windows、Mac OS X、RISC OS 等。今天,PHP已經支持了大多數的 WEB 伺服器,包括 Apache、Microsoft Internet Information Server(IIS)、Personal Web Server(PWS)、Netscape 以及 iPlant server、Oreilly Website Pro Server、Caudium、Xitami、OmniHTTPd 等。對於大多數的伺服器,PHP 提供了一個模塊;還有一些 PHP 支持 CGI 標准,使得 PHP 能夠作為 CGI 處理器來工作。

綜上所述,使用 PHP,您可以自由地選擇操作系統和 WEB 伺服器。同時,您還可以在開發時選擇使用面對過程和面對對象,或者兩者混和的方式來開發。盡管 PHP 目前的版本還沒有支持 OOP 所有的標准,但很多代碼倉庫和大型的應用程序(包括 PEAR 庫)僅使用 OOP 代碼來開發。

使用 PHP,您並不局限於輸出 HTML。PHP 還能被用來動態輸出圖像、PDF 文件甚至 Flash 動畫(使用 libswf 和 Ming)。您還能夠非常簡便的輸出文本,例如 XHTML 以及任何其它形式的 XML 文件。PHP 能夠自動生成這些文件,在服務端開辟出一塊動態內容的緩存,可以直接把它們列印出來,或者將它們存儲到文件系統中。

PHP 最強大最顯著的特性之一,是它支持很大范圍的資料庫。您會發現利用 PHP 編寫資料庫支持的網頁簡單得難以置信。目前,PHP 支持如下資料庫:

Adabas D Ingres Oracle (OCI7 and OCI8)
dBase InterBase Ovrimos
Empress FrontBase PostgreSQL
FilePro (read-only) mSQL Solid
Hyperwave Direct MS-SQL Sybase
IBM DB2 MySQL Velocis
Informix ODBC Unix dbm

我們同時還有一個 DBX 擴展庫使得您可以自由的使用該擴展庫支持的任何資料庫。另外,PHP 還支持 ODBC,即 Open Database Connection Standard(開放資料庫連接標准),因此您可以連接任何其它支持該世界標準的資料庫。

PHP 還支持利用諸如 LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM(Windows 環境)等不計其數的協議的服務。您還可以開放原始網路埠,使得任何其它的協議能夠協同工作。PHP 支持和所有 WEB 開發語言之間的 WDDX 復雜數據交換。關於相互連接,PHP 已經支持了對 Java 對象的即時連接,並且可以將他們自由的用作 PHP 對象。您甚至可以用我們的 CORBA 擴展庫來訪問遠程對象。

PHP 具有極其有效的文本處理特性,支持從 POSIX 擴展或者 Perl 正則表達式到 XML 文檔解析。為了解析和訪問 XML 文檔,我們支持了 SAX 和 DOM 標准。您可以使用我們的 XSLT 擴展庫來轉換 XML 文檔。

如果您將 PHP 用於電子商務領域,您會發現其 Cybercash payment、CyberMUT、VeriSign Payflow Pro 以及 CCVS 函數對於您的在線交易程序來所是非常有用的。

熱點內容
java的大小寫 發布:2024-10-28 13:17:58 瀏覽:284
yocto交叉編譯 發布:2024-10-28 12:59:41 瀏覽:189
案例演算法 發布:2024-10-28 12:30:55 瀏覽:29
鴻蒙編譯器mac 發布:2024-10-28 12:30:12 瀏覽:528
我的世界pc國際服伺服器 發布:2024-10-28 12:30:03 瀏覽:669
java反射私有屬性 發布:2024-10-28 12:29:02 瀏覽:577
微軟安卓編譯軟體 發布:2024-10-28 12:16:05 瀏覽:565
蘋果軟體如何關閉存儲 發布:2024-10-28 12:08:57 瀏覽:626
ie設置代理伺服器地址 發布:2024-10-28 11:52:37 瀏覽:658
如何製作一個好的伺服器 發布:2024-10-28 11:45:07 瀏覽:402