什麼是 LAMP 堆疊?

LAMP 堆疊是指一套免費的開放原始碼元件,搭配使用可協助開發人員建構、部署及管理動態網路應用程式。

引言

Michael Kunze 在 1998 年首次將 LAMP 一詞定義為一套免費的開放原始碼元件,搭配使用可協助開發人員建構、部署及管理動態網路應用程式。由於集合元件或層可共同構成完整的功能環境,因此稱為「堆疊」。

堆疊的每個元件或層都是免費的開放原始碼,因此人人都能自由使用。元件名稱的第一個字母組成 LAMP 縮寫:

  • Linux - 作業系統
  • Apache - 網路伺服器
  • MySQL - 資料庫伺服器
  • PHP、Perl 和 Python - 程式設計語言

框架

讓我們來看看各層如何搭配運作,打造完整的解決方案來提供網頁應用程式。下圖說明不同的元件如何搭配運作以建立堆疊。

具有網路伺服器、MySQL 資料庫伺服器、Linux 作業系統和程式設計語言的 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 中的「P」原本是指 1995 年推出的程式設計語言 PHP,可用來建立動態網頁。隨著時間過去,「P」也涵蓋 PythonPerl 等在網站開發方面越來越受歡迎的非 PHP 語言。

現今的網站需要動態功能,才能顯示即時或最新資訊。由於 HTML 無法執行動態程序,您可以在網頁上需要這項功能的部分,嵌入 PHP、Perl 或 Python 程式碼。HTML 可用於網站版面配置,PHP、Perl 或 Python 則可用來取得即時資訊,例如查看電子商務網站上的最新庫存。

運作方式

下方的簡化工作流程,可讓使用者在執行 LAMP 堆疊的動態網站上搜尋「棒球比數」。Linux 是堆疊的基礎元素,每個層都是在 Linux 上執行。

在動態網站上搜尋資訊時的查詢工作流程

使用 LAMP 堆疊的優點

開發人員選擇 LAMP 堆疊來建構網頁應用程式的常見原因包括:

費用

LAMP 是免費的開放原始碼,這是其使用量的主要驅動因素之一。也就是說,開發人員無須支付專屬軟體授權費,即可開始使用。這樣可大幅降低前測、建構、部署及管理網路應用程式的成本。

提高效率

由於 LAMP 堆疊的元件已推出將近 30 年,LAMP 提供經過試驗及測試的網頁開發解決方案。開發人員可以使用現有的最佳做法、程式碼和工具,節省時間和心力。

彈性

由於 LAMP 是開放原始碼,可讓您根據自身需求和業務要求,靈活選擇合適的元件。LAMP 生態系統提供強大的建構模塊,例如程式碼範例、模組和擴充功能,可讓您依據需求加以自訂和混合。

Community

由於 LAMP 大受歡迎,由經驗豐富的專家所組成的廣大全球社群所提供的協助和支援,可讓您在專案的各個階段受益匪淺。這個強大而活躍的社群能夠讓更多人分享最佳做法、工具、資源,以及更快且更一致的發布週期。

找到所需的解決方案了嗎?讓我們攜手解決您面臨的難題。

MySQL 適用的 Cloud SQL:Google Cloud 提供的 MySQL 全代管服務
透過我們的 Marketplace,在 Google Cloud 中部署 LAMP 堆疊元件

展開下一步行動

運用價值 $300 美元的免費抵免額和超過 20 項一律免費的產品,開始在 Google Cloud 中建構產品與服務。

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
控制台
Google Cloud