LAMP 堆疊是指一套免費的開放原始碼元件,搭配使用可協助開發人員建構、部署及管理動態網路應用程式。
Michael Kunze 在 1998 年首次將 LAMP 一詞定義為一套免費的開放原始碼元件,搭配使用可協助開發人員建構、部署及管理動態網路應用程式。由於集合元件或層可共同構成完整的功能環境,因此稱為「堆疊」。
堆疊的每個元件或層都是免費的開放原始碼,因此人人都能自由使用。元件名稱的第一個字母組成 LAMP 縮寫:
讓我們來看看各層如何搭配運作,打造完整的解決方案來提供網頁應用程式。下圖說明不同的元件如何搭配運作以建立堆疊。
Linux 是 LAMP 堆疊的作業系統 (OS) 和基礎。Linux 於 1991 年推出,是一款免費的開放原始碼作業系統,在全球廣受歡迎。Linux 為開放原始碼,具有靈活彈性且可自訂,讓機構能夠根據需求修改原始碼。LAMP 堆疊的其他三個部分由 Linux OS 支援。
Apache HTTP Server 是一款網路伺服器軟體,可透過網際網路提供網路內容。Apache 於 1995 年推出,已成為全球最受歡迎的網路伺服器之一。Apache 是 LAMP 堆疊中的第二個層,透過網際網路處理用戶端要求。使用超文本傳輸通訊協定 (HTTP) 可接受傳入的 HTTP 要求,然後提供相關的網路內容。由於 Apache 是開放原始碼,這個強大的生態系統建立了許多模組,可擴充 Apache 的功能。這些模組包含驗證、加密、診斷、記錄等。
MySQL 是用於儲存應用程式資料的開放原始碼關聯式資料庫。DB-Engines 指出,1996 年推出的 MySQL 現已成為全球第二熱門的資料庫。LAMP 堆疊使用 MySQL 在資料庫中儲存、管理及查詢資訊。這類資訊包括使用者帳戶、使用者詳細資料、產品名稱、客戶記錄和銷售等等。使用者可以透過結構化查詢語言 (SQL) 輕鬆存取及操控儲存在資料庫中的資訊。
下方的簡化工作流程,可讓使用者在執行 LAMP 堆疊的動態網站上搜尋「棒球比數」。Linux 是堆疊的基礎元素,每個層都是在 Linux 上執行。
開發人員選擇 LAMP 堆疊來建構網頁應用程式的常見原因包括:
LAMP 是免費的開放原始碼,這是其使用量的主要驅動因素之一。也就是說,開發人員無須支付專屬軟體授權費,即可開始使用。這樣可大幅降低前測、建構、部署及管理網路應用程式的成本。
提高效率
由於 LAMP 堆疊的元件已推出將近 30 年,LAMP 提供經過試驗及測試的網頁開發解決方案。開發人員可以使用現有的最佳做法、程式碼和工具,節省時間和心力。
彈性
由於 LAMP 是開放原始碼,可讓您根據自身需求和業務要求,靈活選擇合適的元件。LAMP 生態系統提供強大的建構模塊,例如程式碼範例、模組和擴充功能,可讓您依據需求加以自訂和混合。
Community
由於 LAMP 大受歡迎,由經驗豐富的專家所組成的廣大全球社群所提供的協助和支援,可讓您在專案的各個階段受益匪淺。這個強大而活躍的社群能夠讓更多人分享最佳做法、工具、資源,以及更快且更一致的發布週期。