Nhưng LAMP còn có nhiều hơn thế nữa đối với tín dụng của nó. Đó là một trong những ngăn xếp phần mềm nguồn mở đầu tiên dành cho web và vẫn là một trong những cách phổ biến nhất để cung cấp các ứng dụng web. Nó được sử dụng rộng rãi đến mức bạn có thể gặp nó thường xuyên trong suốt sự nghiệp của mình khi bạn cập nhật hoặc lưu trữ các ứng dụng hiện có. Và nó được nhiều người coi là nền tảng được lựa chọn để phát triển các ứng dụng web tùy chỉnh mới.
Ổn định, đơn giản, mạnh mẽ—đây là những từ thường được dùng để mô tả LAMP. Tất cả những điều này làm cho nó rất đáng để tìm hiểu và là một bổ sung có giá trị cho bất kỳ sơ yếu lý lịch nào của nhà phát triển
Các thành phần ngăn xếp ĐÈN
LAMP là viết tắt của Linux, Apache, MySQL và PHP. Cùng nhau, họ cung cấp một bộ phần mềm đã được chứng minh để cung cấp các ứng dụng web hiệu suất cao. Mỗi thành phần đóng góp các khả năng thiết yếu cho ngăn xếp
- Linux. Hệ điều hành. Linux là một hệ điều hành [HĐH] mã nguồn mở và miễn phí đã xuất hiện từ giữa những năm 1990. Ngày nay, nó có một cơ sở người dùng rộng lớn trên toàn thế giới trải dài trong các ngành công nghiệp. Linux phổ biến một phần vì nó cung cấp nhiều tùy chọn cấu hình và linh hoạt hơn một số hệ điều hành khác
- apache. máy chủ web. Máy chủ web Apache xử lý các yêu cầu và cung cấp nội dung web qua HTTP để bất kỳ ai trong miền công cộng đều có thể truy cập ứng dụng qua một URL web đơn giản. Được phát triển và duy trì bởi một cộng đồng mở, Apache là một máy chủ trưởng thành, giàu tính năng, điều hành một phần lớn các trang web hiện có trên internet.
- mysql. Kho dữ liệu. MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở để lưu trữ dữ liệu ứng dụng. Với My SQL, bạn có thể lưu trữ tất cả thông tin của mình ở định dạng dễ dàng truy vấn bằng ngôn ngữ SQL. SQL là một lựa chọn tuyệt vời nếu bạn đang xử lý một lĩnh vực kinh doanh có cấu trúc tốt và bạn muốn dịch cấu trúc đó thành phần phụ trợ. MySQL phù hợp để chạy các trang web lớn và phức tạp. Xem "SQL so với. Cơ sở dữ liệu NoSQL. Sự khác biệt là gì?" để biết thêm thông tin về cơ sở dữ liệu SQL và NoSQL
- PHP. ngôn ngữ lập trình. Ngôn ngữ kịch bản mã nguồn mở PHP hoạt động với Apache để giúp bạn tạo các trang web động. Bạn không thể sử dụng HTML để thực hiện các quy trình động như lấy dữ liệu ra khỏi cơ sở dữ liệu. Để cung cấp loại chức năng này, bạn chỉ cần thả mã PHP vào các phần của trang mà bạn muốn động.
PHP được thiết kế cho hiệu quả. Nó làm cho việc lập trình trở nên dễ dàng hơn—và thú vị hơn một chút—bằng cách cho phép bạn viết mã mới, nhấn làm mới và thấy ngay kết quả thay đổi mà không cần biên dịch. Nếu muốn, bạn có thể hoán đổi PHP để lấy Perl hoặc ngôn ngữ Python ngày càng phổ biến
LAMP có kiến trúc phân lớp cổ điển, với Linux ở mức thấp nhất. Lớp tiếp theo là Apache và MySQL, tiếp theo là PHP. Mặc dù PHP trên danh nghĩa là lớp trên cùng hoặc lớp trình bày, nhưng thành phần PHP nằm bên trong Apache
Cách các phần tử ngăn xếp LAMP hoạt động cùng nhau
Một cái nhìn cấp cao về thứ tự thực thi ngăn xếp LAMP cho thấy các phần tử tương tác với nhau như thế nào. Quá trình bắt đầu khi máy chủ web Apache nhận được yêu cầu cho các trang web từ trình duyệt của người dùng. Nếu yêu cầu dành cho tệp PHP, Apache sẽ chuyển yêu cầu tới PHP, tải tệp này và thực thi mã có trong tệp. PHP cũng giao tiếp với MySQL để lấy bất kỳ dữ liệu nào được tham chiếu trong mã.
Sau đó, PHP sử dụng mã trong tệp và dữ liệu từ cơ sở dữ liệu để tạo HTML mà trình duyệt yêu cầu để hiển thị các trang web. Ngăn xếp LAMP hiệu quả trong việc xử lý không chỉ các trang web tĩnh mà cả các trang động nơi nội dung có thể thay đổi mỗi khi được tải tùy thuộc vào ngày, giờ, danh tính người dùng và các yếu tố khác.
Sau khi chạy mã tệp, PHP sẽ chuyển dữ liệu kết quả trở lại máy chủ web Apache để gửi tới trình duyệt. Nó cũng có thể lưu trữ dữ liệu mới này trong MySQL. Và tất nhiên, tất cả các hoạt động này được kích hoạt bởi hệ điều hành Linux chạy ở cơ sở của ngăn xếp
Tính linh hoạt của ngăn xếp LAMP
Mặc dù LAMP sử dụng Linux làm HĐH, nhưng bạn có thể sử dụng các thành phần khác với HĐH thay thế để đáp ứng các nhu cầu cụ thể của mình. Ví dụ: có một ngăn xếp WAMP, sử dụng Microsoft Windows; .
Vì LAMP hoàn toàn là mã nguồn mở và không độc quyền nên bạn có thể tránh bị khóa. Bạn có thể linh hoạt lựa chọn các thành phần phù hợp cho các dự án hoặc yêu cầu kinh doanh cụ thể
LAMP cũng cung cấp sự linh hoạt theo những cách khác. Apache được thiết kế theo mô-đun và bạn sẽ thấy có sẵn các mô-đun có thể tùy chỉnh, sẵn có cho nhiều tiện ích mở rộng khác nhau. Các mô-đun này bao gồm từ hỗ trợ cho các ngôn ngữ khác đến khả năng xác thực.
Một ưu điểm khác của LAMP là kiến trúc an toàn và các phương pháp mã hóa được thiết lập tốt đã được chứng minh trong doanh nghiệp
Ngăn xếp LAMP và hiệu quả phát triển
LAMP có thể giúp bạn giảm thời gian phát triển. Bởi vì LAMP là một ngăn xếp mã nguồn mở đã có hơn một thập kỷ, nên ngày nay có một hệ sinh thái LAMP đáng kể. Bạn có thể xây dựng dựa trên những gì người khác đã làm trong quá khứ và biến nó thành của riêng bạn. Làm việc trong một mô-đun Apache giúp bạn hoàn thành 80% công việc, tùy chỉnh 20% cuối cùng và kết quả là tiết kiệm đáng kể thời gian