Infra

LAMP 스택

baek-dev 2025. 5. 1. 12:11

LAMP 스택이란 무엇인가 (Linux + Apache + MariaDB + PHP)

LAMPLinux, Apache, MariaDB, PHP 로 구성된 전통적인 웹 애플리케이션 서버 환경을 구성하는 기술 스택임.
웹사이트를 개발하고 배포하기 위한 오픈소스 기반의 표준 웹 서버 구성 방식으로,
백엔드 애플리케이션 처리부터 데이터베이스, 서버 운영까지 전체를 포괄하는 풀스택 서버 환경이라 할 수 있음.


1. LAMP 스택 구성요소 설명

구성요소 역할 설명
Linux 운영체제 Ubuntu, CentOS 등 리눅스 기반 서버 OS를 사용함
Apache 웹 서버 HTTP 요청을 처리하고, PHP 해석 결과를 브라우저에 전달함
MariaDB 데이터베이스 MySQL 호환 오픈소스 DBMS로, 사용자 데이터 저장 및 조회 처리
PHP 백엔드 언어 동적 웹 페이지를 생성하고 DB 연동 로직을 처리함

원래 LAMP의 "M"은 MySQL이었으나, 최근에는 MariaDB를 대체로 사용하는 경우가 많아졌음.


2. LAMP 스택의 작동 원리

웹 브라우저가 사용자의 요청을 전송하면, LAMP 스택은 다음과 같은 순서로 동작함:

  1. Apache 웹 서버가 HTTP 요청을 수신함
  2. 요청이 .php 파일이면 Apache가 PHP 엔진(mod_php) 에게 처리 요청함
  3. PHP가 MariaDB와 연결하여 필요한 데이터를 조회하거나 수정함
  4. 처리된 결과를 HTML로 생성하여 Apache가 응답함
  5. 브라우저는 결과를 받아 사용자에게 페이지를 표시함

3. MariaDB란?

MariaDBMySQL의 오픈소스 포크(Fork) 로, 원래 MySQL을 개발했던 사람들에 의해 만들어졌음.
MySQL과 호환되며, 성능 개선, 라이선스 자유도 등의 이유로 LAMP 환경에서 점점 더 많이 사용되고 있음.

  • SQL 표준을 따르는 관계형 DBMS임
  • InnoDB, Aria, MyISAM 등의 스토리지 엔진 지원
  • mysql 클라이언트로도 그대로 사용 가능함
  • 커뮤니티 중심 개발로 기능 개선이 빠름

4. LAMP 스택의 장점

장점 설명
오픈소스 기반 모두 무료로 사용할 수 있고, 커뮤니티도 활발함
운영이 단순함 설정 구조가 비교적 직관적이며 학습이 쉬움
호스팅 환경 지원 대부분의 웹호스팅 서비스에서 LAMP 환경을 기본 지원함
레거시 호환성 워드프레스, phpBB, phpMyAdmin 등과 궁합이 뛰어남
가볍고 빠름 대규모 트래픽이 아닌 경우 충분히 효율적으로 동작함

5. LAMP 스택의 단점

단점 설명
확장성 제한 대규모 MSA 구조에는 어울리지 않음
현대적 프레임워크 부족 Node.js, Spring 같은 최신 웹 프레임워크에 비해 기능이 제한됨
보안 설정 필수 직접 설치 시 PHP, DB 보안 설정을 신경 써야 함
트렌드와의 거리 최근엔 Docker, Kubernetes, Nginx 등으로 대체되는 경우 많음

6. LAMP 설치 예시 (Ubuntu 기준)

# Apache 설치
sudo apt install apache2

# MariaDB 설치
sudo apt install mariadb-server

# PHP 설치
sudo apt install php libapache2-mod-php php-mysql

# Apache 재시작
sudo systemctl restart apache2

설치 후 /var/www/html/index.php 에 PHP 코드를 작성하면 브라우저에서 바로 실행 가능함.

<?php
phpinfo();
?>

7. 실무 활용 사례

  • 중소형 웹사이트 운영
    • 워드프레스, 게시판, 포트폴리오 사이트 등에서 활용
  • 웹 호스팅 서비스
    • 대부분의 웹호스팅 업체가 LAMP 환경을 기본 제공함
  • 내부 인트라넷 시스템
    • 단순 CRUD 시스템을 빠르게 구축 가능함
  • 교육 및 실습 서버
    • 리눅스 기반 서버, 웹 개발, DB 학습용 환경으로 사용됨

8. LAMP 대체 스택 비교

스택 구성 특징
LEMP Linux + Nginx + MariaDB + PHP Apache 대신 Nginx 사용 (더 가볍고 빠름)
MEAN MongoDB + Express + Angular + Node.js JS 기반 풀스택, 비동기 처리에 유리
Spring Boot + MySQL Java 기반 백엔드 대규모 백엔드 시스템에 적합함
Django + PostgreSQL Python 기반 웹 프레임워크 데이터 분석 기반 프로젝트에 적합

정리

LAMP 스택은 오랜 시간 동안 사용되어 온 고전적인 웹 서버 환경 구성 방식임.
Linux, Apache, MariaDB, PHP 로 구성되어 있으며, 간단한 서버를 빠르게 구축하고 운영할 수 있음.
지금도 소규모 웹사이트, 블로그, 게시판, 인트라넷 시스템 등에서는 여전히 실용적인 선택지임.
대규모 확장이나 최신 트렌드에는 다소 부족하지만, 기본기와 서버 환경 이해에 매우 유익한 구조임.

 

 

 

 

출처 : ChatGPT

'Infra' 카테고리의 다른 글

K6 부하 테스트  (0) 2025.04.25
Micrometer  (1) 2025.04.10
Prometheus  (0) 2025.04.09
Grafana  (0) 2025.04.08
리버스 프록시  (1) 2025.04.03