GNU/Linux >> Znalost Linux >  >> Ubuntu

Co je LAMP Stack?

Úvod

Zásobníky řešení jsou sady jednotlivých komponent, které vytvářejí kompletní prostředí pro vývoj aplikací. Komponenty jsou obvykle vyvíjeny nezávisle, ale jejich časté kombinované používání a kompatibilita je opravňuje k tomu, aby se staly zásobníkem.

Různé aplikace vyžadují různé zásobníky. Vývojáři například potřebují operační systém, webový server, software pro správu databází a programovací jazyk k vytvoření webové aplikace.

V tomto článku se dozvíte, co je zásobník LAMP, jak funguje a jaké jsou jeho výhody a nevýhody.

Co je zásobník LAMP?

Zásobník LAMP je populární open-source zásobník řešení používaný především při vývoji webu.

LAMP se skládá ze čtyř komponent nezbytných k vytvoření plně funkčního webového vývojového prostředí. První písmena názvů komponent tvoří zkratku LAMP:

  • Linux je operační systém používaný ke spuštění zbývajících součástí.
  • Apache Server HTTP je software webového serveru používaný k poskytování statických webových stránek.
  • MySQL je systém pro správu relačních databází používaný pro vytváření a správu webových databází, ale také pro datové sklady, logování aplikací, e-commerce atd.
  • PHP, Perl a Python jsou programovací jazyky používané k vytváření webových aplikací.

Každá součást představuje základní vrstvu zásobníku. Společně se komponenty používají k vytváření databází řízených dynamických webových stránek.

Obrázek níže ukazuje, jak se vrstvy skládají dohromady:

Architektura zásobníku LAMP

Linux

Linux je vrstva operačního systému a páteř zásobníku LAMP. Flexibilní a přizpůsobitelná povaha Linuxu v kombinaci se skutečností, že se jedná o open-source, z něj činí oblíbené OS řešení pro provozování ostatních komponent LAMP.

V porovnání s SQL, ASP.NET a ASP, které fungují efektivněji v systému Windows, PHP a MySQL jsou optimalizovány tak, aby poskytovaly nejlepší výsledky na Linuxu. Díky této kompatibilitě se dobře vejdou do zásobníku.

Apache

Apache HTTP Server je populární software webového serveru, který běží nad operačním systémem Linux v zásobníku LAMP. Úlohou webového serveru je zpracovávat požadavky a přenášet informace přes internet pomocí HTTP .

S jeho moduly pro více zpracování , Apache lze nakonfigurovat jako procesně založený a vláknový server. Modulární architektura serveru podporuje funkce, jako je modulární zpracování protokolů.

Apache je také známý svými filtry , procesy aplikované na data, která server zpracovává. Statický i dynamický obsah lze šifrovat, skenovat na viry a komprimovat pomocí filtrů.

Stále populárnější alternativou k Apache je NGINX, webový server, jehož popularita od roku 2008 neustále roste. Zatímco Apache i NGINX jsou schopné servery, uživatelé budou preferovat jeden v závislosti na scénáři použití, typu obsahu a dostupných možnostech hostování.

NGINX je považován za lepší volbu pro statický obsah a pokud jde o dynamický obsah, existuje mezi nimi malý rozdíl ve výkonu. Apache také běžně používají uživatelé sdíleného hostingu, zatímco NGINX se používá hlavně pro virtuální privátní servery, vyhrazený hosting nebo clusterové kontejnery.

MySQL

MySQL je systém pro správu databází, který podporuje SQL a relační tabulky, takže je dobrou volbou pro vytváření a údržbu dynamických databází na podnikové úrovni.

MySQL je kompatibilní napříč platformami. Tato funkce jej kvalifikuje jako součást sady pro vývoj webu, jako je LAMP, protože webové aplikace obvykle cílí na více operačních systémů.

Jednou z hlavních nevýhod MySQL, zejména ve srovnání s nerelačními řešeními, jako je MongoDB, je to, že se škáluje pouze vertikálně. Vzhledem k tomu, že je také neefektivní při manipulaci s velkými databázemi, použití MySQL v projektech, které očekávají velký provoz, vyžaduje pečlivé plánování.

MariaDB je další systém pro správu relačních databází, který může být součástí platformy LAMP. Tvrdí, že je plně kompatibilní s MySQL a umožňuje uživatelům přenášet jejich databáze bez jakýchkoli komplikací nebo ztrát.

PHP

PHP (Hypertext Preprocessor) je programovací jazyk, který kombinuje všechny prvky zásobníku LAMP a umožňuje efektivní provoz webových stránek a webových aplikací. Když návštěvník otevře webovou stránku, server zpracuje příkazy PHP a odešle výsledky do prohlížeče návštěvníka.

PHP je čtvrtá vrstva původního zásobníku, protože dobře spolupracuje s MySQL. Běžně se používá pro vývoj webových aplikací, protože jde o dynamicky typovaný jazyk a lze jej vložit do HTML, takže se s ním pracuje rychle a snadno.

P ve zkratce zásobníku LAMP může také odkazovat na dva další programovací jazyky – Perl nebo Python . Všechny tři jsou jednoduché, ale užitečné dynamické nástroje pro vytváření prostředí, ve kterých lze úspěšně vyvíjet aplikace.

K čemu se zásobník LAMP používá?

Zásobník LAMP se používá pro vytváření a poskytování webových aplikací. Jeho flexibilita a efektivita umožňuje menším vývojářům konkurovat komerčním řešením vývoje softwaru.

Čtyři komponenty LAMP byly vybrány jako optimální řešení pro vývojáře, kteří chtějí hostovat, obsluhovat a spravovat webový obsah. Poskytují cestu pro přístup k obsahu, softwaru a dalším webovým nástrojům.

Výhody a nevýhody LAMP Stack

Výhody

  1. LAMP je open source. Zdrojový kód softwaru je sdílený a dostupný pro lidi, aby mohli provádět změny a vylepšení, čímž se zvýší jeho celkový výkon.
  2. Je snadno přizpůsobitelný. Uživatelé mohou nahradit každou komponentu jiným open-source řešením, které vyhovuje potřebám konkrétní aplikace.
  3. Je snadné najít podporu kvůli velikosti komunity LAMP.
  4. Jedná se o vyzrálý zásobník, který lze snadno nastavit.

Nevýhody

  1. Nepodporuje jiné operační systémy než Linux.
  2. Relační vlastnost MySQL činí celý zásobník LAMP méně efektivním a flexibilním než jeho konkurenti, kteří používají nerelační řešení.
  3. Apache může při velkém pracovním zatížení narazit na problémy s výkonem.
  4. Přepínání mezi kódováním v Pythonu a PHP na straně serveru a používání JavaScriptu na straně klienta může narušit pracovní postup vývoje.

Alternativy zásobníku LAMP

Alternativy open source jsou:

  • MEAN (MongoDB, Express, Angular, Node.js)
  • LEMP (Linux, NGINX, MySQL/MariaDB, PHP/Perl/Python)
  • LAPP (Linux, Apache, PostgreSQL, PHP)
  • LEAP (Linux, Eucalyptus, AppScale, Python)
  • LLMP (Linux, Lighttpd, MySQL/MariaDB, PHP/Perl/Python)
  • XAMPP (Více platforem, Apache, MariaDB, PHP, Perl)

Mezi alternativy bez otevřeného zdroje patří:

  • WAMP (Windows, Apache, MySQL/MariaDB, PHP/Perl/Python)
  • WIMP (Windows, Internetové informační služby, MySQL/MariaDB, PHP/Perl/Python)
  • MAMP (macOS, Apache, MySQL/MariaDB, PHP/Perl/Python)

Ubuntu
  1. Co je Web 3.0?

  2. Co je sdílený hosting jako webhostingová služba?

  3. Nakonfigurujte vhosty na zásobníku LAMP

  1. Nainstalujte zásobník LAMP na Debian 10

  2. Nainstalujte zásobník LAMP na Fedoru 31

  3. Co dělá ulimit -s neomezený?

  1. Jak nainstalovat LAMP Stack na CentOS 8

  2. MEAN vs. LAMP:Co je lepší?

  3. Jak nainstalovat LAMP Stack na Ubuntu 18.04