Apa itu tumpukan LAMP?

Tumpukan LAMP adalah gabungan dari empat teknologi perangkat lunak berbeda yang digunakan oleh developer untuk membangun situs web dan aplikasi web. LAMP adalah singkatan dari sistem operasi, Linux; server web, Apache; server basis data, MySQL; dan bahasa pemrograman, PHP. Keempat teknologi ini adalah sumber terbuka, yang berarti mereka dikelola komunitas dan tersedia secara bebas untuk digunakan oleh siapa saja. Developer menggunakan tumpukan LAMP untuk membuat, meng-host, dan memelihara konten web. Tumpukan LAMP adalah solusi populer yang mendukung banyak situs web yang biasa Anda gunakan saat ini.

Mengapa tumpukan LAMP penting?

Developer web memilih tumpukan LAMP untuk membangun aplikasi web karena alasan berikut. 

Biaya

Semua teknologi LAMP adalah sumber terbuka, yang berarti bahwa setiap developer atau perusahaan dapat menggunakannya tanpa harus membayar biaya lisensi. Sebagai ganti membeli komponen tumpukan berpemilik, Anda dapat mengunduh sistem operasi, server web, basis data, dan bahasa skrip secara gratis. Ini menurunkan biaya membangun aplikasi web.

Efisiensi

Menyiapkan tumpukan pengembangan web baru memerlukan pengujian yang ketat terhadap kerangka kerja, modul, pustaka, dan alat yang berbeda. Di sisi lain, tumpukan LAMP adalah solusi pengembangan web yang telah dicoba dan diuji. Developer web dapat memprioritaskan dan mempercepat pengembangan aplikasi untuk fokus pada apa yang mereka bangun dibanding cara mereka membangunnya.

Pemeliharaan

Pakar perangkat lunak dari seluruh dunia berkontribusi pada pengembangan teknologi tumpukan LAMP dengan mengubah, mengomentari, dan meninjau kode sumber yang tersedia untuk umum. Mereka secara teratur memelihara dan memperbarui teknologi sehingga mereka tetap relevan dan aman. 

Dukungan

Teknologi sumber terbuka yang populer, seperti tumpukan LAMP, mendapat dukungan dari komunitas IT global yang besar. Oleh karena itu, pengguna tumpukan LAMP dapat lebih mudah menemukan informasi di forum IT publik. Developer web dapat merujuk ke kode contoh atau menggunakan plugin yang diuji yang dibuat oleh komunitas sumber terbuka. 

Fleksibilitas

Tumpukan LAMP memberikan keandalan dan fleksibilitas bagi developer web. Sementara arsitektur LAMP menentukan komponen perangkat lunak untuk setiap lapisan, developer dapat menggantinya sesuai keinginan mereka. Misalnya, mereka dapat menggunakan sistem operasi lain selain Linux sebagai pondasi tumpukan.

Untuk apa tumpukan LAMP digunakan?

Tumpukan LAMP digunakan untuk pengembangan backend atau sisi server. Aplikasi backend adalah perangkat lunak yang berjalan di lingkungan yang tersembunyi dari pengguna akhir. Aplikasi backend terdiri dari:

  • Perangkat lunak pengolah data 
  • Komponen basis data
  • Logika bisnis dalam kode 
  • API untuk berkomunikasi dengan aplikasi lain 

Halaman web yang muncul di browser Anda disebut aplikasi frontend. Ketika Anda berinteraksi dengan halaman, seperti dengan mengeklik tombol, browser Anda berkomunikasi dengan aplikasi backend untuk mengambil informasi yang diperlukan.

Developer menggunakan tumpukan LAMP untuk membuat konten web statis dan dinamis.

Halaman web statis

Informasi halaman web statis dari server web adalah sama untuk semua pengguna. Misalnya, alamat di situs web perusahaan adalah konten statis. Developer web membuat halaman web statis dengan bahasa pemrograman HTML dan CSS dan menyimpannya sebagai file dalam aplikasi server web. 

Halaman web dinamis

Halaman web dinamis berisi informasi yang berubah tergantung pengguna yang melihat halaman web atau aplikasi web. Misalnya, pesan situs web yang berubah berdasarkan lokasi Anda adalah konten dinamis. Server web memberikan situs web dinamis dengan memproses logika bisnis atau mengambil data dari basis data.

 

Apa arsitektur LAMP?

Tumpukan perangkat lunak adalah seperangkat alat berlapis, pustaka, bahasa pemrograman, dan teknologi yang digunakan untuk membangun, mengelola, dan menjalankan aplikasi. Tumpukan terdiri dari komponen perangkat lunak yang mendukung aplikasi dengan cara yang berbeda, seperti presentasi visual, basis data, jaringan, dan keamanan. 

Demikian pula, arsitektur LAMP terdiri dari empat teknologi perangkat lunak yang bekerja sama di belakang layar untuk membuat aplikasi web yang berfungsi. Ini menggambarkan bagaimana masing-masing teknologi pengembangan web berinteraksi satu sama lain di server komputer. Arsitektur LAMP terdiri dari lapisan-lapisan berikut.

Linux

Linux adalah sistem operasi sumber terbuka yang dapat Anda instal dan konfigurasikan untuk memenuhi persyaratan aplikasi yang berbeda. Linux berada di tingkat pertama tumpukan LAMP dan mendukung komponen lain di lapisan atas.

Apache

Apache adalah server web sumber terbuka yang membentuk lapisan kedua dari tumpukan LAMP. Modul Apache menyimpan file situs web dan bertukar informasi dengan browser menggunakan HTTP, protokol internet untuk mentransfer informasi situs web dalam teks biasa. Misalnya, ketika browser meminta halaman web, server HTTP Apache melakukan hal berikut:

  1. Menerima permintaan
  2. Memproses permintaan dan menemukan file halaman yang diperlukan
  3. Mengirim informasi yang relevan kembali ke browser

MySQL

MySQL adalah sistem manajemen basis data relasional sumber terbuka dan merupakan lapisan ketiga dari tumpukan LAMP. Model LAMP menggunakan MySQL untuk menyimpan, mengelola, dan menanyakan informasi dalam basis data relasional. Misalnya, developer menyimpan data aplikasi, seperti catatan pelanggan, penjualan, dan inventaris. Ketika pengguna mencari informasi, server web menanyakan data yang disimpan di MySQL. Kueri mengacu pada instruksi khusus untuk memanipulasi data dalam basis data relasional dengan bahasa SQL.

PHP

PHP, yang merupakan singkatan dari PHP: Hypertext Preprocessor, adalah lapisan keempat dan terakhir dari tumpukan LAMP. Ini adalah bahasa skrip yang memungkinkan situs web untuk menjalankan proses dinamis. Proses dinamis melibatkan informasi dalam perangkat lunak yang terus berubah. Developer web menyematkan bahasa pemrograman PHP dalam HTML untuk menampilkan informasi waktu nyata atau diperbarui di situs web. Mereka menggunakan PHP untuk memungkinkan server web, basis data, dan sistem operasi untuk memproses permintaan dari browser secara kohesif. 

HTML dibandingkan dengan PHP

Developer web menggunakan HTML untuk pengembangan frontend, seperti merancang tata letak halaman web. Sementara itu, mereka menggunakan PHP untuk menentukan perilaku komponen tertentu ketika pengguna memuat halaman web. Misalnya, developer web merancang tata letak grafis katalog produk online dengan HTML. Mereka kemudian menggunakan kode PHP untuk mengambil harga produk terbaru dari server backend.

Bagaimana cara kerja tumpukan LAMP?

Aplikasi web menggunakan tumpukan LAMP untuk menanggapi permintaan dari browser web. Server web Apache dan basis data MySQL berjalan pada sistem operasi Linux dan berkomunikasi menggunakan PHP. Ketika Anda membuka halaman web di browser, tumpukan LAMP melewati proses berikut.

Menerima permintaan

Server web Apache menerima permintaan masuk dari browser. Jika permintaannya adalah untuk memuat file statis, server Apache merespons langsung dengan konten yang sesuai. Jika permintaan untuk konten dinamis, server Apache akan meneruskan permintaan ke komponen PHP. Komponen PHP menemukan dan memuat file PHP yang sesuai yang dapat memproses permintaan.

Memproses permintaan

File PHP berisi fungsi PHP yang merupakan kode untuk menghasilkan konten dinamis. Komponen PHP memproses fungsi PHP, seperti mengonversi unit pengukuran atau membuat bagan penjualan. Beberapa fungsi PHP mungkin memerlukan informasi dari basis data. Dalam kasus tersebut, kode PHP mengambil informasi yang disimpan dari basis data dan menggunakannya untuk memproses fungsi. 

Mengembalikan respons

PHP meneruskan hasil yang dihitung ke server web dalam format HTML. Pada saat yang sama, PHP juga menyimpan data baru dalam basis data MySQL. Server HTTP Apache mengirimkan hasil HTML dinamis ke browser pengguna. 

Apa saja alternatif LAMP?

Alternatif LAMP, atau varian LAMP, adalah teknologi pengembangan backend yang menggunakan komponen yang berbeda dari yang ditentukan dalam arsitektur LAMP. Misalnya, developer web mungkin menggunakan server web lain, bukan Apache, untuk menerima dan memproses permintaan dari aplikasi frontend. Beberapa alternatif LAMP mungkin menggunakan komponen eksklusif, seperti sistem operasi berlisensi. 

Bahasa penulisan skrip alternatif

Meski PHP adalah bahasa penulisan default tumpukan LAMP, developer dapat menggantinya dengan Perl atau Python. 

Perl 

Perl adalah bahasa pemrograman yang telah ada selama lebih dari 30 tahun. Developer menggunakan Perl untuk pengembangan web karena bahasa tersebut bekerja dengan baik dengan integrasi basis data dan memiliki kerangka kerja yang membantu pengembangan. Kerangka kerja adalah alat perangkat lunak yang berisi komponen teruji baik yang mempercepat pengembangan aplikasi.

Python

Python adalah bahasa pemrograman level tinggi untuk membangun berbagai tipe perangkat lunak, termasuk aplikasi web. Developer menggunakan Python dalam pengembangan web karena sederhana dan mudah dipahami.

Apa itu tumpukan MEAN?

MEAN adalah akronim untuk MongoDB, Express.js, Angular.js, dan Node.js. MEAN adalah alternatif untuk LAMP dan dibangun dengan menggunakan teknologi JavaScript. JavaScript adalah bahasa pemrograman untuk pengembangan backend dan frontend. Berikut adalah peran komponen tumpukan MEAN:

  • MongoDB adalah basis data yang berfungsi dengan baik dengan JSON, tipe JavaScript untuk membaca data.
  • Express.js adalah kerangka kerja yang menyediakan alat sumber terbuka untuk membangun aplikasi backend.
  • Node.js adalah platform yang menjalankan aplikasi JavaScript.
  • Angular.js adalah kerangka kerja sumber terbuka untuk mengembangkan aplikasi frontend.

Tumpukan MEAN dibandingkan dengan tumpukan LAMP

Tumpukan MEAN dan LAMP adalah tumpukan perangkat lunak sumber terbuka yang sangat baik untuk berbagai tipe aplikasi web. Tumpukan MEAN cocok untuk aplikasi web yang melibatkan pemrosesan logika berat di frontend. Sementara itu, tumpukan LAMP sangat baik untuk situs web kompleks berskala besar yang menangani lalu lintas padat. Sebagai contoh, developer menggunakan tumpukan MEAN untuk membangun aplikasi web streaming video, tetapi memilih tumpukan LAMP untuk aplikasi web e-commerce (perdagangan elektronik).

Bagaimana AWS mendukung pengembangan tumpukan LAMP?

Anda dapat menggunakan Amazon Lightsail untuk mengembangkan, melakukan deployment, dan mengelola aplikasi tumpukan LAMP di AWS. Dengan Lightsail, Anda dapat melakukan hal berikut:

Mulailah menggunakan tumpukan LAMP di AWS dengan membuat akun AWS gratis sekarang juga.

Langkah berikutnya di Tumpukan LAMP AWS

Lihat sumber daya terkait produk tambahan
Lihat penawaran gratis untuk layanan Alat Developer di cloud 
Daftar untuk akun gratis

Dapatkan akses secara instan ke AWS Tingkat Gratis. 

Daftar 
Mulai membangun di konsol

Mulai membangun di Konsol Manajemen AWS.

Masuk