I. Origin of LAMP
The term "LAMP" first came from the German Magazine "ct Magazine". In 1990, Michael Kunze first combined these projects to create the abbreviation "LAMP. Although these components are not designed for use at the beginning, these open-source software can be easily obtained at any time and free of charge. As a result, these components are often used together. Over the past few years, the compatibility of these components has been constantly improved, and the application situation has become very general. Some extension functions have been created to improve collaboration between different components.
Currently, almost all Linux releases contain "LAMP stack" by default. These products form a powerful Web application platform. Every component in LAMP stack is a FOSS (Free or Open Source Software) instance. There are three advantages of the FOSS method. First, the nature of the FOSS software means that applications can be downloaded for free, so that more people can use the software without paying. This free method is especially attractive to users. If these users do not use free software, they need to pay for "professional" commercial software tools. This is usually an expensive step in website creation. The FOSS license is open, so there are very few use and restrictions on Application Software Based on the FOSS technology. You can develop and apply LAMP-based projects without having to pay any license fee for software release. Therefore, this is very attractive to amateurs and professionals. The main reason for the growth and use of FOSS technology (including LAMP) is that users can access their resources, fix faults, and improve the performance of their applications. Combined with open-source software licenses, this approach simplifies the development process for many enterprises and provides them with the flexibility not limited by proprietary or commercial software.
Ii. Appearance of WAMP
In the past, Microsoft and some traditional open-source vendors believed that whether to use their software was either an exclusive choice for Microsoft Windows. net infrastructure; or run the LAMP application stack, which includes Linux, MySQL database, Apache Web server, and three programming languages starting with P letters: Perl, Python, and PHP. Simply put, the former option ensures easier management but more expensive. The latter option has lower cost and better security, but the cost is higher complexity. However, with the gradual maturity of LAMP, LAMP also quietly evolved into a WAMP. This is an intermediate path: WAMPWindows, Apache, MySQL, Perl/Python/PHP ). More and more IT users think that this method can provide the best of the two camps.
Iii. Composition of WAMP and LAMP platforms
The WAMP and LAMP platforms are composed of several components with a hierarchical structure. Each layer provides a key part of the entire software stack:
• Linux and windows:Linux and windows are at the lowest layer and provide the operating system. Each other component is actually running on it. However, it is not necessarily limited to Linux and windows. If necessary, other components include Mac OS X or UNIX.
• Apache:The lower layer is Apache, which is a Web server. Apache provides a mechanism for users to obtain Web pages. Apache is a stable server that supports key tasks. Over 65% of websites on the Internet use Apache as a Web server. PHP components are actually in Apache, and dynamic pages can be created through Apache and PHP.
• MySQL:MySQL provides the data storage end of the LAMP system. With MySQL, you can obtain a very powerful database suitable for running large and complex sites. In Web applications, all data, products, accounts, and other types of information are stored in this database, which can be easily queried using the SQL language.
• PHP:PHP is a simple and effective programming language. It is like an adhesive that can bond all other components of the LAMP system together. You can use PHP to write dynamic content that can access MySQL database data and some features provided by Linux.
• Perl:Perl is a scripting language. This indicates that it is not compiled into an executable program, but a set of command scripts that are interpreted at runtime ). Perl is the combination of words that represent the actual extraction and report language (practical extraction and report language. Perl is hailed as the "Swiss Army Knife" in the language ". It is powerful and flexible. Larry Wall developed Perl when NASA was a system administrator in the late 1980s S. He created Perl to simplify the task of building reports. Perl is now used to execute many tasks. It may be the most popular programming language used for CGI public gateway interface on the Web. The reason is that Perl is a very powerful text processor, and Web programming is mainly text processing. In addition, using Perl is generally easier than using C/C ++, Java, or Tcl, and it appears earlier than Python. Perl is called a "glue language ". The so-called glue language, that is, it can be used to connect many elements together.
• Python:Python is an interactive object-oriented interpreted programming language. Python uses very clear syntax to implement very powerful functions. It has modules, classes, unexpected processing, and high-level dynamic data types and dynamic definitions. In addition, it has interfaces and library functions for multiple systems to call. The built-in modules can also be conveniently written in C or C ++. Python is also competent for user interface programming. Python can run in Linux, UNIX, Windows, DOS, OS/2, Mac, Amiga, and other environments. Although Python is copyrighted, it can be used and distributed for free, or even for commercial purposes.
The WAMP and LAMP platforms are composed of several components with a hierarchical structure of 1.
|
Figure 1 WAMP and LAMP hierarchy |
Iv. Comparison of Lamp and wamp
◆ Installation complexity
Early installation of a LAMP system is relatively responsible. With the popularization of Linux, it is now easier to install a LAMP system. In addition, many Linux Release versions such as Redhat and Debian) you can automatically configure components such as Apache, php, and mysql during installation. Compared with Wamp, WAMP installation is more complex. However, there are many Wamp software packages that can be downloaded and installed on Windows servers. Traditionally, AMPP-Apache, MySQL, PHP, and Perl-are installed and configured as separate products. The commitment to integrating them into middleware software makes development of open source projects more competitive than development of J2EE applications, at least for underlying applications. It mainly includes the following software:
1. Wamp5:WAMP5 the software automatically installs Apache, PHP5, and MySQL on your system. The software is configured with a service manager running on the system tray icon and a plug-in that allows you to run PHP4.3.9 and PHP5.0.2 on the same server. Its official website: http://www.wampserver.com/
2. AppServ:It is a PHP webpage shelving tool package. Thai authors repackage free website resources on the Internet into a single installer to help beginners quickly complete the shelving process, appServ 4.0 includes PHP 4.3.8, Apache 1.3.31, MySQL 4.0.20, and Zend Optimizer 2.5.3Zend Performance. It is a well-established PHP acceleration/optimization software and relies on the most well-known Zend company in the PHP field. Version 4.0 has been released, which can provide Program Acceleration, content caching, File compression, and download services for PHP applications. It has powerful functions and won several PHP magazine recommendation awards .) PhpMyAdmin 2.6.0-rc1 and Perl 5.8.4. Its official website: http://appserv.sourceforge.net/
3. XAMPP:XAMPP is a comprehensive package of AMPP Apache, MySQL, PHP, and Perl. It is one of several non-commercial AMPP middleware products that can be used on Linux and Windows platforms. With this close integration, XAMPP can run any program: from the personal homepage to the fully functional product site, although this is only for development purposes; for security considerations, XAMPP is not suitable for use on product servers ). Basic software packages include system, programming, and server software: Apache, MySQL, and PHP. When writing this article, the versions are 4.3.8 and 5.0.1) Perl, ProFTPD, an FTP server, OpenSSL, supports Secure Sockets Layer.
4. WAPM:WAPM is an integrated network server system running on Windows. It includes the following components: Apache2, the most popular WEB service software on the internet, used to provide basic WEB service functions and support SSL, GZIP, and LIC (restrictions on simultaneous IP connections) function: PHP4 and PHP5 are the most popular dynamic web pages on the Internet. They are used to develop PHP network applications and support ZendOptimizer optimization and Zend encryption, alternatively, Turck MMCahe can accelerate, optimize, encrypt, and dynamically cache PHP. Tomcat4 is used to provide the most popular JSP (JavaServer Pages) and Servlet (Java Servlet) Service parsing on the Internet. MySQL4 is used to provide the most popular SQL database functions on the Internet.
◆ Management complexity
It is usually complicated to manage LAMP and WAMP separately. With the emergence of many management suites, the management difficulties of both are simplified. The two are comparable. Figure 2 shows the wamp5 Management Interface in Windows. Figure 3 shows the XAMPP Management Interface in Linux.
|
Figure 2 wamp5 Management Interface in Windows |
|
Figure 3 shows the XAMPP Management Interface in Linux |
◆ Security performance and execution performance
In terms of security performance, the author believes that Lamp is higher than the WAMP system. Currently, only some WAMP software packages automatically support SSL connections including WAMP and XAMPP. Therefore, the official XAMPP prompt is: For security considerations, XAMPP is not suitable for use on product servers.
The performance of Lamp is higher than that of WAMP. Some WAMP software also needs to simulate the environment tools, such as cygwin is a unix simulation environment running on windows platform, cygnus first put gcc, gdb, gas and other development tools have been improved so that they can generate and interpret win32 target files. Then they will port these tools to the windows platform. They wrote a simulation layer for unix system libraries based on win32 APIs. In this way, as long as the source code of these tools and the shared library are connected together, you can use the cross compiler on the unix host to generate a tool set that can run on the windows platform. Based on these development tools transplanted to the windows platform, cygnus gradually changes the source code of other tools without having to modify their configuration scripts) the software is transplanted to windows. In this way, running bash, development tools, and user tools on windows seems to work on unix. Cygwin affects execution performance.
The effects produced by the continuous development of LAMP are also consistent with what we often call the butterfly effect, that is, when a butterfly in a certain place throws its wings, it may affect the global climate. Since Microsoft launched MSDE, it not only did not curb the development momentum of LAMP, but instead led to the evolution of WAMP and WIMPWindows + IIS + MySQL + PHP) and MMAP Mac OS + Apache + MySQL + PHP ). As a user, we welcome the appearance of WAMP, which provides more options.