LAMP Stack이란 무엇인가요?

LAMP 스택은 개발자가 동적 웹 애플리케이션을 빌드, 배포, 관리하는 데 도움이 되도록 함께 작동하는 무료 오픈소스 구성요소의 번들을 나타냅니다.

소개

미하엘 쿤제는 1998년에 처음으로 개발자가 동적 웹 애플리케이션을 빌드, 배포, 관리하는 데 도움이 되도록 함께 작동하는 무료 오픈소스 구성요소 번들을 나타내는 LAMP라는 용어를 만들었습니다. 공통된 구성요소나 레이어가 함께 작동하여 완전히 작동하는 환경을 구성하므로 스택이라고 합니다.

스택의 각 구성요소나 레이어는 무료 오픈소스이므로 누구나 사용하고 액세스할 수 있습니다. LAMP는 구성요소 이름의 각 첫 글자로 구성된 약어입니다.

  • Linux - 운영체제
  • Apache - 웹 서버
  • MySQL - 데이터베이스 서버
  • PHP, Perl, Python - 프로그래밍 언어

건축물

웹 애플리케이션을 전달하는 전체 솔루션을 제공하기 위해 각 레이어가 함께 작동하는 방식을 살펴보겠습니다. 다음 다이어그램에서는 서로 다른 구성요소가 모두 함께 작동하여 스택을 만드는 방법을 보여줍니다.

웹 서버, MySQL 데이터베이스 서버, Linux 운영체제, 프로그래밍 언어를 특징으로 하는 LAMP Stack 아키텍처

운영체제

Linux 는 LAMP 스택의 운영체제(OS)이자 기반입니다. 1991년에 출시된 Linux는 전 세계적으로 큰 인기를 얻고 있는 무료 오픈소스 OS입니다. 오픈소스이기 때문에 유연하고 맞춤설정이 가능하므로 조직에서 니즈에 맞게 소스 코드를 수정할 수 있습니다. LAMP 스택의 다른 세 가지 요소는 Linux OS 위에 있습니다.

웹 서버

Apache HTTP 서버는 인터넷을 통해 웹 콘텐츠를 전달하는 웹 서버 소프트웨어입니다. 1995년에 출시된 Apache는 세계에서 가장 인기 있는 웹 서버 중 하나로 성장했습니다. Apache는 LAMP 스택의 두 번째 레이어로, 인터넷을 통해 클라이언트 요청을 처리합니다. HTTP(Hypertext Transfer Protocol)를 사용하여 수신 HTTP 요청을 수락한 후 관련 웹 콘텐츠를 제공합니다. Apache는 오픈소스이므로 이 강력한 생태계에 Apache 기능을 확장하는 다양한 모듈이 빌드되었습니다. 이러한 모듈에는 인증, 암호화, 진단, 로깅 등이 포함될 수 있습니다. 

데이터베이스

MySQL은 애플리케이션 데이터를 저장하기 위한 오픈소스 관계형 데이터베이스입니다. DB-Engines에 따르면 1996년에 출시된 MySQL이 현재 세계에서 두 번째로 많이 사용되고 있는 데이터베이스입니다. LAMP 스택은 MySQL을 사용하여 데이터베이스에 정보를 저장, 관리, 쿼리합니다. 이 정보에는 사용자 계정, 사용자 세부정보, 제품 이름, 고객 기록, 판매, 애플리케이션 등이 포함될 수 있습니다. 사용자는 구조화된 쿼리 언어(SQL)를 사용하여 데이터베이스에 저장된 정보에 쉽게 액세스하고 조작할 수 있습니다.

프로그래밍 언어

원래 LAMP의 'P'는 동적 웹페이지를 만드는 데 도움이 되는 1995년에 출시된 프로그래밍 언어인 PHP를 지칭했습니다. 시간이 지남에 따라 'P'는 Python, Perl과 같이 웹 개발에도 널리 사용되고 있는 PHP 이외의 언어가 포함되도록 확장되었습니다.

현재 웹사이트에는 실시간 정보나 업데이트된 정보를 표시하는 동적 기능이 필요합니다. HTML에서는 동적 프로세스를 실행할 수 없으므로 PHP, Perl 또는 Python 코드를 이 기능이 필요한 웹사이트 일부에 삽입할 수 있습니다. HTML은 웹사이트 레이아웃에 사용될 수 있는 반면, PHP, Perl 또는 Python은 전자상거래 웹사이트에서 최신 재고 확인과 같은 실시간 정보를 얻는 데 사용됩니다.

작동 방식

LAMP 스택이 실행되는 동적 웹사이트에서 '야구 점수'를 검색하는 사용자를 위한 간소화된 워크플로가 아래에 있습니다. 각 레이어는 스택의 기본 요소로 Linux에서 실행됩니다. 

동적 웹사이트에서 정보를 검색할 때의 쿼리 워크플로

LAMP Stack 사용의 이점

개발자가 웹 애플리케이션을 빌드하는 데 LAMP 스택을 선택하는 일반적인 이유는 다음과 같습니다.

비용

LAMP를 사용하는 주요 이유 중 하나는 무료 오픈소스라는 점입니다. 즉, 개발자가 독점 소프트웨어에 대한 라이선스 요금을 지불하지 않고도 시작할 수 있습니다. 따라서 웹 애플리케이션 파일럿, 빌드, 배포, 관리 비용이 크게 절감됩니다.

효율성

LAMP 스택 구성요소는 약 30여 년 동안 사용되고 있으며 LAMP는 검증된 웹 개발 솔루션을 제공합니다. 개발자는 기존 권장사항, 코드, 도구를 활용하여 시간과 수고를 절약할 수 있습니다.

유연성

LAMP는 오픈소스이므로 니즈와 비즈니스 요구사항에 적합한 구성요소를 유연하게 선택할 수 있습니다. LAMP 생태계는 코드 샘플, 모듈, 확장 프로그램과 같이 니즈에 맞게 맞춤설정하고 조합할 수 있는 강력한 구성요소를 제공합니다.

커뮤니티

LAMP의 인기 덕분에 프로젝트의 각 단계에서 도움과 지원을 제공하는 숙련된 전문가로 구성된 대규모 글로벌 커뮤니티의 도움을 받을 수 있습니다. 이 활발하고 적극적인 커뮤니티를 통해 권장사항, 도구, 리소스를 공유하고 더욱 빠르고 일관된 출시 주기가 가능해집니다.

아이디어를 얻었다면 당면 과제를 Google과 함께 해결해보세요.

Google Cloud는 MySQL의 완전 관리형 서비스인 MySQL용 Cloud SQL을 제공합니다.
Google의 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