LAMP
ialah
akronim
yang merujuk kepada
tindanan penyelesaian
aturcara-
aturcara
perisian, biasanya
atur cara sumber terbuka
, yang digunakan bersama-sama untuk mengendalikan
laman web
dinamik atau
pelayan
. LAMP pada asalnya merupakan singkatan untuk:
Gabungan teknologi ini digunakan khususnya untuk mentakrifkan infrakstruktur
pelayan web
,
paradigma pengaturcaraan
untuk membangun perisian, serta untuk mengasaskan pakej
pengedaran perisian
. Lebih terkini,
P
kerap kali digunakan untuk merujuk kepada
P
erl
atau
P
ython
sebagai bahasa-bahasa pengaturcaraan yang alternatif. Sila lihat
Kelainan-kelainan
di bawah.
Walaupun para pencipta tidak mereka bentuk aturcara-
atur cara
sumber terbuka
mereka supaya dapat saling digunakan bersama-sama, gabungan itu telah menjadi popular kerana kos pemerolehannya yang rendah serta juga kerana komponen-komponennya mudah didapati (ditawarkan secara percuma dengan kebanyakan
edaran Linux
). Apabila digunakan bersama-sama, aturcara-aturcara ini merupakan satu
tindanan penyelesaian
teknologi yang menyokong pelayan-
pelayan aplikasi
. Tindanan-tindanan yang lain termasuk persekitaran-persekitaran pembangunan aplikasi seperti
WebObjects
Apple Computer
,
Java
/
Java EE
,
Grails
, dan seni bina
.NET
Microsoft
.
Komponen penskripan tindanan LAMP berasal daripada antaramuka-
antaramuka
web
CGI
yang mecapai satu kepopularan pada awal dekad
1990-an
. Teknologi ini membenarkan para pengguna
pelayar web
melaksanakan atur cara mereka pada pelayan web dan dengan itu, dapat menerima kandungan dinamik serta juga statik. Para pengaturcara menggunakan
bahasa penskripan
bersama-sama aturcara-aturcara ini kerana mereka berupaya memanipulasi aliran-aliran teks dengan lebih mudah dan cekap, walaupun jika komponen-komponen tersebut berasal daripada sumber yang berbeza. Atas alasan ini, para pereka bentuk sistem sering merujuk kepada sistem-sistem penskripan itu sebagai bahasa-
bahasa glu
.
Pada tahun
1998
,
Michael Kunze
mencipta akronim
LAMP
dalam
rencananya
untuk
c't
, sebuah majalah perkomputeran
Jerman
(12/98, m.s. 230). Rencana itu bertujuan untuk menunjukkan bahawa seberkas perisian bebas dapat memberikan alternatif yang berdaya maju terhadap pakej-pakej komersil. Memahami kegemaran dunia
teknologi maklumat
akan akronim, Kunze mecipta akronim
LAMP
sebagai istilah
pemasaran
untuk meningkatkan kepopularan perisian bebas, dengan
O'Reilly
dan
MySQL AB
kemudian mempopularkan istilah tersebut di kalangan penutur
bahasa Inggeris
. Sebenarnya, sejak dari masa itu, MySQL AB telah mendasarkan sesetengah usaha pemasarannya pada kepopularan tindanan LAMP.
Linux
(juga dikenali sebagai
GNU/Linux
) ialah
sistem pengendalian
komputer
bak Unix
.
Pelayan HTTP Apache
ialah
pelayan web
perisian bebas
/
sumber terbuka
yang paling popular,
[1]
dan yang bertindak sebagai pelantar rujukan
de facto
untuk mereka bentuk dan menilai pelayan-pelayan web yang lain.
MySQL
ialah
Sistem Pengurusan Pangkalan Data
(DBMS)
pengguna berbilang
dan
bebenang berbilang
, dengan melebihi sepuluh juta pemasangan
[2]
PHP
(PHP: Prapemproses Hiperteks) ialah
bahasa pengaturcaraan
reflektif
yang pada asalnya direka bentuk untuk mencipta
halaman web dinamik
. Ia digunakan terutamanya untuk
perisian aplikasi
pelayan
, tetapi juga boleh digunakan untuk
antara muka baris perintah
atau
aplikasi grafik
tersendiri.
Bahasa-bahasa pengaturcaraan
Perl
dan
Python
kekadang digunakan sebagai ganti untuk PHP dan seringnya dirujuk juga sebagai sistem-sistem LAMP. Sebuah ulasan pelantar berani mencadangkan: "Biar P merujuk kepada PHP, Perl, Python, dan Ruby."
[3]
Bagaimanapun, sesetengah pembangun lebih suka menggunakan M untuk merujuk kepada
mod perl
atau
mod python
dan P untuk bermaksud
PostgreSQL
dan dengan itu, menterbalikkan kefungisan M dan P serta mengakibatkan setakat kekeliruan.
Lagi satu kelainan merujuk kepada M sebagai Middleware (termasuk
Ruby (bahasa pengaturcaraan
, Perl, Python
dll.
) dan P sebagai PostgreSQL. Walaupun umumnya tidak diterima, takrif ini boleh diperlihatkan sebagai suatu tanda perkembangan yang berterusan di kalangan
komuniti perisian bebas
semasa mentakrifkan semula matlumat dan sempadan masing-masing.
Alternatif bukan bebas yang biasa untuk
Pelayan HTTP Apache
ialah
Perkhidmatan Maklumat Internet
(IIS)
Microsoft
. Oleh sebab ia hanya dapat dilaksanakan dengan perisian Microsoft, sistem pengendalian
Microsoft Windows
harus digunakan sebagai ganti untuk Linux.
- FWIP
untuk Firebird, Windows, IIS, and PHP
- WIMP
untuk Windows, IIS, MySQL, and PHP
- WIMSA
atau
WISA
untuk Windows, IIS,
Pelayan SQL Microsoft
, dan
ASP
- WISC
untuk Windows, IIS,
Pelayan SQL
, dan
C#
- WISP
untuk Windows, IIS, Pelayan SQL, dan PHP
- WIPP
untuk Windows, IIS, PostgreSQL, dan PHP (sama bagi
sistem-sistem SBS Windows
)
- "A Brighter LAMP" (LAMP yang lebih terang), dengan dua huruf terakhir bermaksud
Middleware
dan PostgreSQL; ini membenarkan pemilihan bahasa yang tidak bermula dengan huruf
P
, seperti
Tcl
dan
Ruby
- AMPLE
, dengan
E
merujuk kepada
Eclipse
- FAMP
untuk
FreeBSD
,
Apache
, MySQL, dan PHP
- FWAP
untuk
Firebird
, Windows, Apache, dan PHP
- JOLT
untuk Java,
Oracle
, Linux, dan
Tomcat
- JSAS
untuk Pelayan Tersendiri
Joomla!
- LAMAR
untuk Linux, Apache, MySQL,
AJAX
, dan
Ruby
- LAMP
untuk "
Linux
, Apache, dan kebanyakan bahasa penskripan yang bermula dengan 'P' dan PostgreSQL" (digunakan oleh
Jeff Waugh
)
- LAMPS
, dengan S untuk
Lapisan Soket Selamat
(SSL) atau
SugarCRM
- LAPDANCE
untuk Linux, Apache,
Python
Distributed Architecture for Network Computing Environments
(Seni Bina Teredar untuk Persekitaran Perkomputeran Rangkaian), reka bentuk
FLOSS
untuk
perkomputeran teredar
- Grandma's LAMP
yang merupakan mesin maya LAMP yang amat mudah penggunaannya
- MARS
untuk MySQL, Apache,
Ruby
, dan
Solaris
[1]
- MSAS
untuk Pelayan Tersendiri
Mambo
- STOJ
untuk
Solaris
,
Tomcat
,
Oracle
, dan Java
- WAPP
untuk Windows, Apache, PostgreSQL, dan PHP
- LAMPH
, sebutan
bahasa Jerman
untuk kelompok LAMP yang menggunakan perisian kelompok Heartbeart.
Sesetengah orang menggunakan istilah
LAMP
secara generik untuk sistem-sistem alternatif sebagai ganti untuk mencipta akronim yang baru, dan menggunakannya untuk membezakan antara sistem-sistem ini dengan persekitaran pembangunan aplikasi web bersepadu.