Domovská » Webový design » MEAN vs. LAMP Stack Klady a zápory

    MEAN vs. LAMP Stack Klady a zápory

    Webové zásobníky se vyvinuly v průběhu desetiletí s pokrokem v technologiích a backendových jazycích. Dva z nejpopulárnějších web stacků jsou LAMP a MEAN. Spoléhají na dvě různé technologie pro backendové jazyky, databáze a serverová prostředí. Termín "stack" označuje technologie, které se navzájem ukládají, aby vytvořily prostředí webového serveru.

    V tomto článku bych chtěl objasnit tyto dva webové komíny tím, že se podívám na jejich technologická rozhodnutí, a to jak pro, tak pro nevýhody. Kde každý zásobník exceluje? Jaké typy projektů by z obou možností měly prospěch? Pokud jste novým webovým technologiím nebo se jen chcete dozvědět o těchto dvou zásobnících, pak má tento průvodce vše, co budete potřebovat.

    Tradiční vývoj lampy

    Většina vývojářů by měla vědět o tradičním zásobníku LAMP, protože je to již od počátku webu. SVÍTILNA znamená Linux, Apache, MySQL a PHP. Každý z nich je individuální softwarový balíček, který je kombinován a tvoří univerzální serverové řešení.

    Největší důvod držet se LAMP je bezpečnost a široká podpora. To bylo asi po celá desetiletí, a je to osvědčený způsob hostování webových stránek.

    Všechny backend tech jako PHP a MySQL jsou dobře známy a podporuje každý hlavní poskytovatel hostingu. Pokud pracujete na zásobníku LAMP, můžete v podstatě hostit kdekoli. Navíc dostanete přístup k nejoblíbenějším CMS motorům. WordPress, Drupal a Joomla běží na PHP / MySQL.

    Existují přizpůsobitelné možnosti v rámci architektury LAMP, jako je LEMP nahrazující Apache nginx. Můžete také spustit variantu na serveru Windows jako zásobník WAMP.

    Nicméně všechny základní software - včetně Apache, MySQL a PHP - byly otevřeny, a vyrobený primárně pro Linux. To je důvod, proč Linux dává největší smysl pro serverové prostředí, a proto LAMP obstál v testu času pro moderní vývoj webu.

    Většina vývojářů jde touto cestou, protože je to nejjednodušší způsob, jak získat webové stránky online. Najdete zde spoustu podpory na fórech, která pokrývají vše, co potřebujete pro konfiguraci a odstraňování problémů s prostředím LAMP. Například, můžete se podívat na tuto otázku ServerFault pro více informací.

    JavaScript Backend s MEAN

    Node.js je nejnovější technologie pro vývojáře, kteří se rozhodli spouštět škálovatelné aplikace vytvořené pomocí JavaScriptu. Uzel napájí zásobník MEAN, a nabízí primární výhodu: všechno běží na jediném jazyce.

    ZNAMENAT znamená MongoDB, Express.js, Angular.js, a samozřejmě Node.js. Tato zkratka neobsahuje žádný požadavek na serverový operační systém nebo serverový software. Zásobník MEAN lze spustit na libovolném OS, a Uzel dokonce přichází s vlastním serverem pro zpracování JS na backendu.

    Na stránkách Mean.io najdete spoustu dokumentace a podpory.

    Ačkoli tento svazek získal mnoho pozornosti, stále nemá kam se postavit stabilní podpora jako tradiční zásobník LAMP.

    Tak proč by někdo šel s MEAN? Protože to je rychleji a měřítko. MongoDB je a Databáze NoSQL optimalizuje dotazy. Využívání fullstack JavaScriptu také zlepšuje vývoj, protože jeden jazyk platí pro všechny frontendové a backendové práce.

    Navíc mnoho dalších rámců JS dopadá na trh jako stabilní řešení. Například MEAN lze přepnout na a MEEN stack nahrazení úhlové s Ember.

    Programátoři budou milovat zásobník MEAN, protože to odděluje kód pro udržovatelnost a růst. To z toho dělá jednodušší organizovat webové aplikace JavaScript, takže běží v přirozeném prostředí.

    Na tomto tématu je toho hodně co se naučit a to je pravděpodobně největší překážka vstupu nových vývojářů. Naučit se všechny technologie potřebné k řízení aplikace MEAN může trvat měsíce. Ale pokud milujete Node, a chcete spustit vše na JavaScriptu to stojí za námahu.

    Zde jsou některé tutoriály pro začátečníky, které vám pomohou začít.

    • Absolutní začátečnický průvodce Node.js
    • Felixův Node.js průvodce pro začátečníky
    • Úvod do Express.js
    • Naučte se budovat moderní webové aplikace s MEAN
    • Začínáme s Node.js, Express a MongoDB

    PHP vs. uzel

    PHP je od poloviny 90. let a je skutečně nejoblíbenějším jazykem backendu. Mnozí weboví vývojáři začínají s PHP (nebo se nakonec naučí), protože je to tak dominantní napříč webovými platformami a poskytovateli hostingu.

    Uzel je novější rámec, ale jeho popularita vzrostla mimořádně rychle. To zahrnuje popularitu NPM jako správce balíčků pro webové vývojáře a rozšiřuje se dále na výkonné rámce frontendu, jako je Angular 2.

    Další výhodou Node je, že to je je dodáván s vlastním webovým serverem. JavaScript je v kořenech všeho na zásobníku MEAN, takže pokud máte rádi JS, pak budete opravdu milovat budování webových aplikací MEAN.

    Mnoho vývojářů má pocit, že PHP je špatně navržený jazyk, protože tvůrce, Rasmus Lerdorf ho ve skutečnosti nepředstavoval jako jazyk. PHP začalo jako obecné řešení pro webové stránky, a rychle se rozrostla do velké knihovny nesouvisejících funkcí.

    Ale s PHP 7 se snaží opravit mnoho chyb jazyka, a to zdarma OOP framework, jako je Laravel, PHP je nyní mnohem lepší jazyk, než kdy byl.

    IMAGE: Stackoverflow

    Jazyková debata tedy jde dolů Vaše osobní volba. Opravdu milujete psaní JavaScriptu? Pak uzel se zásobníkem MEAN může být za zvážení.

    Pokud již znáte PHP a chcete se držet toho, co víte, LAMP je také životaschopná trasa.

    Celkové klady a zápory:

    Existují více vrstev každého webového zásobníku ke srovnání, včetně operačního systému, serverového softwaru, databáze a jazyka backendu.

    (1) MEAN stack taky zahrnuje úhlové který je rámcovým rámcem. Neexistuje žádný požadovaný rámec v zásobníku LAMP, ale můžete vždy přidat svůj vlastní do jakékoli aplikace, kterou postavíte.

    (2) Co se týče OS, LAMP stack hledá derivaci Linuxu. Linux je obvykle tou nejlepší volbou pro serverové prostředí bez ohledu na zásobník a platí to i pro MEAN.

    (3) Nyní je operační systém serveru jen počítačový software, ale není to software webového serveru. K tomu potřebujete program jako Apache nebo nginx. LAMP používá Apache, protože je to jedna z nejstabilnějších dostupných možností.

    (4) MEAN používá server Node.js, který je součástí balíčku Node. Je to stále poměrně nové, a přestože je tam spousta podpory, Node nemá ani zdaleka stejnou komunitu jako Apache..

    (5) Server uzlů také vyžaduje backend JavaScriptu (bez rozšíření). Apache umožňuje většinu jazyků backendu, a existuje mnoho bezplatných rozšíření pro větší podporu. Ale teď, Apache nemá nic pro podporu uzlu.

    (6) Správa databáze je místo, kde najdete největší rozdíl. LAMP používá MySQL pro ukládání relačních dat, zatímco MEAN používá MongoDB, což je nerelační databáze. Nerelační databáze jsou mnohem rychlejší, a poskytují snadnější způsob škálování s vyšším provozem.

    (7) Mějte na paměti, že PHP není omezeno pouze na MySQL. To může používat MongoDB a jiné alternativy jako PostgreSQL nebo SQLite. Je to jen, že většina vývojářů PHP zná MySQL, takže je to hlavní uchazeč o typický zásobník LAMP.

    (8) Typicky se hromadí MEAN běž rychleji a měřítko větší, ale vyžadují mnohem více času a znalostí serveru, aby se systém naučil. Zásobníky LAMP jsou pokus-a-pravda, a oni přijdou mimo krabici s nejbezpečnější infrastrukturou a nejširší podporou.

    (9) Programovací jazyky dělají velký rozdíl mezi oběma svazky. LAMP pracuje především na PHP, které zahrnuje WordPress a Laravel framework. MEAN pracuje na ExpressJS / NodeJS pro backend s AngularJS na frontendu.

    (10) MEAN je full-JavaScript JavaScript, a je tu spousta, co se musíte naučit, abyste se dostali k tomuto běhu. To je častý výběr nových startupů ochoten posunout hranice ve vývoji webových aplikací. LAMP je tradičnější JS na frontendu, PHP na backendu. Je vyroben pro lidi, kteří chtějí získat webové stránky online bez přílišných starostí.

    Prosím, podívejte se na tuto srovnávací příručku a dozvíte se něco více. Ani volba není správná nebo špatná, prostě odlišná a připravená pro různé projekty.

    Balení

    Řekl bych, že většina webových stránek se naklonila ke zásobníku LAMP, protože je testována, a má mnoho užitečných podprocesů Q&A indexovaných ve službě Google. MEAN stále roste a má také spoustu podpory, ale může být více technický než většina lidí, se kterými se chce vypořádat.

    Neváhejte vyzkoušet obojí a uvidíte je sami. Je to možné nainstalovat obě nastavení lokálně v počítači a stavět na nich bez vzdáleného serveru.

    A pokud hledáte více informací o obou zásobnících, shromáždil jsem několik praktických odkazů níže.

    • Naučte se budovat moderní webové aplikace s MEAN (thinkster.io)
    • Docker LAMP Stack Admin (jessesnet.com)
    • Jak nainstalovat Linux, Apache, MySQL, PHP (LAMP) Stack na Debian 8 (digitalocean.com)