Sometime you see some keywords like LAMP stack, MEAN stack. So, what is it ? This post we will go to deep in that.
What is Stack ?
Let’s start with a example. You are coding a webiste using Laravel(PHP framework). You using Mysql for store data. After you done code, you need to deploy it, that mean you need push code to somewhere to run it. In here, you using nginx for webserver installed on CentOS.
Technical stack or solution stack is a set of software subsystems or components needed to create a complete platform such that no additional software is needed to support applications.
Components of Stack
A general stack include:
* Operating sytem
* Web server
* Database Server
* Back-end Programming Language
For above example you are using LEMP stack:
Each component in Stack has a function:
The picture above is brief how a web application works.
In general, we use some providers(digital ocean, heorku, somee), you only need push your code and run it. Because they has already setup full eviroment for you.
If you really want to know how stack work, find a VPS run Linux then setup all software required.
How to choose a software stack ?
Here are some questions to ask before you pick your stack:
* What are your development team’s strengths?
* __What platform is best for your project?
* What database is best for project ?
Some common stacks
It is the most poplular Stack include: Linux, Apache, MySQL, PHP/Python/Perl. Popular CMS like WordPress, Joomla based on it.
The advantages of this Stack is all components of it is Open Source, you don’t have to pay money to buy. Community of them is very large, it’s easy for you to find the way if you have any problem.
Now, we are trafering for Appache to Nginx ( LEMP stack).
This includes: Windows,IIS, SQL Server, ASP.NET. As you see, all of them come from Microsoft.
Many company, organizations using this Stack.
There is one thing with this Stack is it has fee 🙁
It’s very famous in recent years. Includes: MongoDB, Express, AngularJS, NodeJS. Another version is MERN , replace angular with React.
Other Stacks: Django Stack(Python/Django/Apache/MySQL), Bitnami DevPack(PHP/Django/Ruby on Rails/Java/MySQL, PostgerSQL/Apache Tomcat)