自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

LAMP的介紹

運維 系統(tǒng)運維
LAMP是什么?很多人都在問。LAMP指的是Linux、Apache、Mysql、PHP/Perl/Python的一組組合軟件,它用來搭建動態(tài)或者服務(wù)器。本身具有獨立的幾種程序,卻由于共同的功能組合在一起,形成高度兼容web應(yīng)用平臺。本文講述的是LAMP的介紹。

LAMP的概括

 

[[19730]]

       LampLinux+Apache+Mysql+Perl/PHP/Python一組常用來搭建動態(tài)網(wǎng)站或者服務(wù)器的開源軟件,本身都是各自獨立的程序,但是因為常被放在一起使用,擁有了越來越高的兼容度,共同組成了一個強大的Web應(yīng)用程序平臺。隨著開源潮流的蓬勃發(fā)展,開放源代碼的LAMP已經(jīng)與J2EE和.Net商業(yè)軟件形成三足鼎立之勢,并且該軟件開發(fā)的項目在軟件方面的投資成本較低,因此受到整個IT界的關(guān)注。從網(wǎng)站的流量上來說,70%以上的訪問流量是LAMP來提供的,LAMP是最強大的網(wǎng)站解決方案.

 

  LAMP的起源

  LAMP這個特定名詞最早出現(xiàn)在1998年。當(dāng)時,Michael Kunze為德國計算機雜志c't寫作的一篇關(guān)于自由軟件如何成為商業(yè)軟件替代品的文章時,創(chuàng)建了LAMP這個名詞,用來指代Linux 操作系統(tǒng)、Apache網(wǎng)絡(luò)服務(wù)器、MySQL 數(shù)據(jù)庫和PHP (Perl或Python)腳本語言的組合(由四種技術(shù)的開頭字母組成)。由于IT世界眾所周知的對縮寫的愛好,Kunze提出的LAMP這一術(shù)語很快就被市場接受。O'Reilly和MySQL AB更是在英語人群中推廣普及了這個術(shù)語。隨之LAMP技術(shù)成為了開源軟件業(yè)的一盞真正的明燈。

  目前,幾乎在所有的Linux發(fā)布版中都默認(rèn)包含了“LAMP stack”的產(chǎn)品。這些產(chǎn)品組成了一個強大的Web應(yīng)用程序平臺。“LAMP stack”中的每一個組件都是一個FOSS(免費或者開源軟件/Free or Open Source Software)的實例。FOSS方法的好處有三個方面。第一,F(xiàn)OSS軟件的性質(zhì)意味著應(yīng)用程序可以免費下載,能夠讓更廣泛的人們不用付費就可以使用這個應(yīng)用軟件。這種免費的方式對于廣大用戶特別具有吸引力。這些用戶如果不使用免費的軟件就需要付費購買“專業(yè)”的商用軟件工具。這在制作網(wǎng)站方面通常是一種昂貴的步驟。FOSS許可證是開放式的,因此對于基于FOSS技術(shù)的應(yīng)用軟件的使用和限制都非常少。不需要為軟件的發(fā)布支付任何許可證費就可以開發(fā)和應(yīng)用基于LAMP的工程。因此,這對業(yè)余愛好者和專業(yè)人員都非常有吸引力。FOSS技術(shù)(包括LAMP)的增長和使用的主要原因是因為用戶能夠訪問其資源,修復(fù)故障和改善應(yīng)用軟件的性能都非常容易。與開源軟件許可證結(jié)合在一起,這種方法為許多企業(yè)簡化了開發(fā)過程,并且為企業(yè)提供了專有軟件或者商業(yè)軟件的限制中所沒有的靈活性。

  LAMP的平臺組成

  LAMP 平臺由幾個組件組成,呈分層結(jié)構(gòu)。每一層都提供了整個軟件棧的一個關(guān)鍵部分:

  Linux和windows:Linux和windows 處在最低層,提供操作系統(tǒng)。其他每個組件實際上也在其上運行。但是,并不一定局限于Linux和windows,如有必要,其他c操作系統(tǒng)包括: Mac OS X 或 UNIX。

  Apache:次低層是 Apache,它是一個 Web 服務(wù)器。Apache 提供可讓用戶獲得 Web 頁面的機制。Apache 是一款穩(wěn)定的、支持關(guān)鍵任務(wù)的服務(wù)器,Internet 上超過 65% 的網(wǎng)站都使用它作為 Web 服務(wù)器。PHP 組件實際上是在 Apache 中,動態(tài)頁面可以通過 Apache 和 PHP 創(chuàng)建。

[[19731]]

 

  lampMySQL:MySQL 提供 LAMP 系統(tǒng)的數(shù)據(jù)存儲端。有了 MySQL,便可以獲得一個非常強大的、適合運行大型復(fù)雜站點的數(shù)據(jù)庫。在 Web 應(yīng)用程序中,所有數(shù)據(jù)、產(chǎn)品、帳戶和其他類型的信息都存放在這個數(shù)據(jù)庫中,通過 SQL 語言可以很容易地查詢這些信息。

  PHP:PHP 是一門簡單而有效的編程語言,它像是粘合劑,可以將 LAMP 系統(tǒng)所有其他的組件粘合在一起。您可以使用 PHP 編寫能訪問 MySQL 數(shù)據(jù)庫中的數(shù)據(jù)和 Linux 提供的一些特性的動態(tài)內(nèi)容。

  Perl:Perl 是一種腳本語言。這表示它并不編譯成可執(zhí)行程序,而是在運行時進行解釋的一組指令(腳本)。 Perl 是代表“實際抽取和報告語言”(practical extraction and report language) 的字首組合詞。Perl 被譽為語言中的“瑞士軍刀”。它功能強大且非常靈活。語言學(xué)家 Larry Wall 在廿世紀(jì)八十年代后期在 NASA 擔(dān)任系統(tǒng)管理員時開發(fā)了 Perl。他創(chuàng)建 Perl 的目的是使構(gòu)建報告的任務(wù)變得更簡單。 Perl 現(xiàn)在用來執(zhí)行許多任務(wù)。它也許是用于在 Web 上進行 CGI(公共網(wǎng)關(guān)接口)編程最流行的語言。其原因就是 Perl 是一種功能非常強大的文本處理器,而 Web 編程主要就是文本處理。另外,使用 Perl 通常比使用 C/C++、Java 或 Tcl 更簡單,而且它比 Python 更早出現(xiàn)。Perl被稱為是一種“膠水語言”。所謂膠水語言,也就是說它是可以用來將許多元素連接在一起的語言。

  Python:Python一種交互式面向?qū)ο蟮慕忉屝途幊陶Z言。 Python使用非常清晰的語法實現(xiàn)非常強大的功能。它具有模塊、類、意外處理以及非常高級別的動態(tài)數(shù)據(jù)類型和動態(tài)定義。并且,它具有接口和庫函數(shù)供多種系統(tǒng)調(diào)用。內(nèi)建模塊還可以使用C或C++語言方便地編寫。對于用戶界面的編程,Python同樣能夠勝任。 Python可以運行在Linux 、UNIX、Windows、DOS、OS/2、Mac以及Amiga等等多種環(huán)境下。 Python雖然有版權(quán),但完全可以免費使用和分發(fā),甚至是為了商業(yè)用途。

  LAMP的安裝

  早期安裝一個LAMP系統(tǒng)是比較復(fù)雜的,隨著Linux的普及現(xiàn)在安裝一個LAMP系統(tǒng)變得比較簡單另外許多Linux發(fā)行版本(Redhat 、Debian)安裝時可以自動配置Apache、php、mysql等組件。

#p#

  LAMP的優(yōu)化

  硬件優(yōu)化

  1、升級硬件的一般規(guī)則:對于 PHP 腳本而言,主要的瓶頸是 CPU ,對于靜態(tài)頁面而言,瓶頸是內(nèi)存和網(wǎng)絡(luò)。一臺 400 Mhz 的普通奔騰機器所下載的靜態(tài)頁面就能讓 T3 專線(45Mbps)飽和。

  2、采用 hdparm 來優(yōu)化磁盤,一般能提升 IDE 磁盤讀寫性能 200%,但是對 SCSI 硬盤也有效果。(不同類型的硬盤對比)

  策略優(yōu)化

  3、Apache 處理 PHP 腳本的速度要比靜態(tài)頁面慢 2-10 倍,因此盡量采用多的靜態(tài)頁面,少的腳本。

  4、PHP 腳本如果不做緩沖,每次調(diào)用都需要編譯,因此,安裝一個 PHP 緩沖產(chǎn)品能提升 25-100% 的性能。

  5、如果你采用了 Linux 系統(tǒng),建議升級內(nèi)核到 2.4,因為靜態(tài)頁面由內(nèi)核服務(wù)。

  6、另外一項緩沖技術(shù)是把不常修改的 PHP 頁面采用 HTML 緩沖輸出。

  7、不要在 Web 服務(wù)器上運行 X-Windows ,關(guān)掉沒有必要運行的進程。

  8、如果能夠用文本就不要用圖像,盡量減小圖片的尺寸。

  9、分散負(fù)載,把數(shù)據(jù)庫服務(wù)器放到另外的機器上去。采用另外低端的機器服務(wù)圖片和 HTML 頁面,如果所有的靜態(tài)頁面在另外一臺服務(wù)器上處理,可以設(shè)置 httpd.conf 中的 KeepAlives 為 off ,來減少斷開連接的時間。

  10、以上所有的方法都是針對單機而言的,如果你覺得系統(tǒng)還是不夠快,可以采用集群,負(fù)載均衡,緩沖技術(shù)。采用 Squid 作為緩沖,配置 Squid 的方法。

  編譯優(yōu)化

  11、把基于文件的會話切換到基于共享內(nèi)存的會話。編譯 PHP 時采用 --with-mm 選項,在 php.ini 中設(shè)置 set session.save_handler=mm 。這個簡單的修改能讓會話管理時間縮短一半。

  12、采用最新版本的 Apache ,并把 PHP 編譯其中,或者采用 DSO 模式,不要采用CGI方式。

  13、編譯 PHP 時,建議采用如下的參數(shù):

  --enable-inline-optimization --disable-debug

  配置優(yōu)化

  14、修改 httpd.conf :

  # 關(guān)閉 DNS lookups,PHP 腳本只拿 IP 地址

  HostnameLookups off

  15、如果網(wǎng)絡(luò)擁擠,CPU 資源不夠用,采用 PHP 的 HTML 壓縮功能:

  output_handler = ob_gzhandler

  PHP 4.0.4 的用戶請不要使用,因為存在內(nèi)存泄漏問題。

  16、修改 httpd.conf 中的 SendBufferSize 為你最大的頁面文件的大小。加大內(nèi)核的 TCP/IP 寫緩沖大小。

  17、采用數(shù)據(jù)庫的持久連接時,不要把 MaxRequestsPerChild 設(shè)置得太大。

  第三方軟件優(yōu)化

  18、如果喜歡從修改 Apache 源碼入手,可以安裝 lingerd。在頁面產(chǎn)生和發(fā)送后,每個 Apache 進程都會浪費一段時光在客戶連接上,Lingerd 能接管這項工作,讓 Apache 迅速服務(wù)下一個客戶請求。

  19、如果你足夠勇敢的話,還可以采用 Silicon Graphics 的 Accelerated Apache 補丁。這個工程能使 Apache 1.3 快 10 倍,使 Apache 2.0 快 4 倍。

  安裝一個 PHP 緩沖產(chǎn)品能提升 25-100% 的性能。

【編輯推薦】

  1. LAMP技術(shù)精解
  2. 調(diào)優(yōu)LAMP的5種簡單方法
  3. 使用CentOS源安裝LAMP全過程
責(zé)任編輯:zhaolei 來源: baidu
相關(guān)推薦

2011-03-11 09:35:01

LAMP介紹

2011-03-18 09:35:50

lamp

2011-03-14 13:51:14

LAMP配置

2011-03-18 09:56:20

lamp

2011-03-11 13:58:54

2011-03-18 10:06:48

LAMP組成

2011-03-22 15:30:51

LAMP

2011-03-11 16:54:47

LAMPphpMyAdmin

2011-03-09 10:55:33

LAMP優(yōu)化技巧

2011-03-10 10:09:33

LAMP優(yōu)化

2011-03-23 14:09:38

2011-03-23 09:40:34

lampsolutions

2011-03-09 10:39:13

LAMP簡介

2011-03-09 15:44:14

UbuntuLAMP

2011-03-14 11:29:43

2011-03-22 09:42:04

lamp

2011-03-23 10:13:53

LAMP環(huán)境搭建

2011-03-10 14:40:48

LAMP搭建

2011-03-09 10:52:04

ContOSLAMP安裝

2011-03-23 17:11:21

Lampwamp
點贊
收藏

51CTO技術(shù)棧公眾號