LAMP - Thai Edition
ช่วงที่ผ่านมาเราคงได้เห็นคำว่า
LAMP ในข่าวของ IT บ่อยๆ
แล้วที่น่าจะเห็นได้ชัดมากๆ ก็มีช่วงที่ Sun Microsystems
Inc ได้เข้าซื้อควบรวมกิจการของ
L นั้นได้อ้างอิงถึง
Linux ซึ่งเป็นระบบปฏิบัติการ
A นั้นได้อ้างอิงถึง
Apache ที่เป็น Web Server
M นั้นได้อ้างอิงถึง
MySQL ที่เป็นดาต้าเบส
P นั้นได้อ้างอิงถึง
PHP หรือบางครั้งอาจจะแทน Perl
หรือ Python และสามารถที่จะอ้างอิงไปถึง
Programming Language ได้ ที่ได้ทำหน้าที่เป็น Application
Server เป็นหลัก
การรวมกันของชุดของเทคโนโลยีเหล่านี้ โดยปกติแล้วนิยมใช้เพื่อเป็นระบบพื้นฐาน
(Infrastructure systems) รองรับการสร้างระบบ
Web ที่ใช้งานกัน
ต่อมาเพื่อความสะดวกจึงมีการนำเอาแต่ละตัวของ LAMP มารวมกันเป็นชุดของซอฟต์แวร์
เพื่อให้ง่ายต่อการติดตั้งและใช้งาน เพราะหากนำมาติดตั้งเอง
อาจจะต้องใช้ความสามารถการทำให้แต่ละส่วนนั้นทำงานด้วยกันได้อีก
เนื่องด้วยแต่ละส่วนนั้น เป็นชุดโปรแกรม Open Source ที่มีความนิยมมากๆ
ในแต่ละหน้าที่ของแต่ละส่วนดังนั้นการออกแบบในเบื้องต้นนั้น
ไม่ได้ออกแบบมาเพื่อการทำงานร่วมกันแบบเฉพาะ แต่เมื่อมีการกำหนดชุดของ LAMP
ขึ้นมาก็ทำให้ผู้ที่นำเอาไปใช้งานมีความสะดวกมากขึ้น
LAMP
เป็นสิ่งที่เริ่มต้นมาตั้งแต่ต้นปี 1990
ด้วยความสามารถของ Common Gateway
Interface (CGI) ด้วยเทคโนโลยีนี้จะทำให้ผู้ใช้เว็ปแอพปริเคชั่นสามารถเรียกใช้งานไปที่เว็บเซิฟเวอร์โดยการใช้
Web browser ได้ ซึ่งปกติผลที่แสดงผ่าน Web
browser นั้นจะอยู่ในรูปของข้อมูลแบบ Static
ซึ่งเป็นผลจากการประมวลข้อมูลที่มีการเปลี่ยนแปลงด้วยตัวของแอพปริเคชั่นที่สร้างขึ้นมา
ด้วยลักษณะงานข้างต้นนั้นก็ได้มีเทคโนโลยีมากมายที่สร้างขึ้นมาเพื่อรองรับความต้องการ
ภาษา Script ก็เป็นตัวเลือกแรกๆ
ของโปรแกรมเมอร์ที่ไว้สร้างการแสดงผลโดยจัดการกับรูปแบบของข้อมูลที่ประมวลผลแล้วจากเว็บเซิฟเวอร์
ซึ่งทำให้การออกแบบระบบที่แพร่หลายในปัจจุบันก็นิยมที่จะใช้ภาษา Script
เป็นตัวช่วยจัดการสร้างการแสดงผล
ในปี
1998 Michael Kunze ได้ใช้ตัวย่อ LAMP
ขึ้นในบทความของ German Computing
Magazine ที่ซึ่งบทความนี้ได้เขียนถึงชุดของฟรีซอฟต์แวร์ที่สามารถทำงานด้านเว็บแอพปริเคชั่นได้เช่นเดียวกับชุดที่ขายในท้องตลาด
ซึ่งทาง Kunze ได้ใช้วิธีการใช้ตัวย่อ
LAMP เพื่อให้เป็นที่น่าสนใจในวงการ IT
ที่วิธีการใช้ตัวย่อจะแพร่หลายได้ง่าย
ทำให้มีการเปิดช่องทางการขยายตัวของชุดของฟรีซอฟต์แวร์นี้ได้ขยายไปรวดเร็วมากขึ้น
ต่อมาทาง O’Reilly และ
MySQL AB ก็พยายามที่จะโปรโมทให้มีความแพร่หลายมากๆ
ขึ้นผ่านตัวย่อ LAMP อีก ซึ่งทำให้ MySQL
AB ได้ผลประโยชน์ในการขยายฐานผู้ใช้งานมากขึ้นนั่งเอง
Linux (L)
เป็น
Operating system ที่มีลักษณะคล้ายกับ Unix
Operating system ซึ่งเป็น Opensource
Operating system ในปัจจุบันนี้ก็มีหลายๆ ผู้ผลิต
ที่ได้รับความนิยมก็มีดังต่อไปนี้
Redhat
ที่เป็นมีผลิตภัณท์ Fedora,
Redhat Enterprise Linux
Ubuntu
Linux ที่มีผลิตภัณท์ Ubuntu Linux
Novell
ที่มีผลิตภัณท์ SUSE Linux
และอีกมากมายหลายจากหลายๆ
ผู้ผลิต ดังต่อไปนี้
http://en.wikipedia.org/wiki/List_of_Linux_distributions
* ผ��ิตภัณท์บางผู้ผลิตไม่ได้เป็นฟรีซอฟท์แวร์แล้ว
โปรดดูรายละเอียดจากเว็บไซค์ของผู้ผลิตนั้นๆ
Apache HTTP Server (A)
เป็นฟรีซอฟท์แวร์ที่ทำหน้าที่เป็นเว็บเซิฟเวอร์หรืออีกนัยหนึ่งคือ Opensource
HTTP server ที่เป็นผลผลิตจากกลุ่มของ Opensource
ที่ใหญ่และแพร่หลายมาก กลุ่มนี้คือ Apache
Foundation ที่มีผลิตภัณท์ Opensource มากมายเพื่อรองรับการทำงานบนเว็บซึ่งรองรับระบบปฏิบัติการหลากหลายไม่ว่าจะเป็น
Solaris, Unix, Linux หรือ Microsoft
Windows รายละเอียดของ Apache HTTP
Server สามารถดูได้เพิ่มเติมที่
HTTP
Server - http://httpd.apache.org
Apache
Foundation - http://www.apache.org
MySQL (M)
ทำหน้าที่หลักเป็นดาต้าเบสหรือ Database
Management System (DBMS)
ซึ่งมีคุณสมบัติพร้อมในการรองรับการใช้งานแบบหลายๆ ผู้ใช้งาน (Multi
Users) ด้วยความสามารถในการแบ่งการทำงานเป็นหลายๆ Thread
(Multithreaded)
ด้วยที่ MySQL ทำมาเพื่อรองรับกลุ่มผู้ใช้แบบ Open Community ดังนั้นระบบปฏิบัติการที่รองรับการมีได้หลากหลายเช่นกัน
ไม่ว่าจะเป็น Solaris, Unix, Linux, MacOSX หรือบน Microsoft Windows สามารถศึกษารายละเอียดเพิ่มเติมได้ที่
MySQL
Database Server - http://dev.mysql.com
PHP (P)
PHP
ได้ความหมายเต็มมาจาก Hypertext
Preprocessor ซึ่งเป็นแอพปริเคชั่นที่ทำหน้าที่เป็น Server
Side Application โดยการออกแบบการสร้าง PHP
นั้นคือการทำหน้าที่ดึงเอาข้อมูล Dynamic
ในส่วนของด้าน Server มาสร้างเป็น Web pages ที่แสดงข้อมูลในรูปแบบ
Static แล้วส่งไปแสดงผลที่ฝั่งของ Web
browser แต่นอกเหนือจากการออกแบบการทำงานในข้างต้นแล้ว PHP
ก็ยังมีความสามารถในการทำงานผ่าน command
line และในแบบรูปแบบ Standalone
Graphical Application อีกด้วย ดูข้อมูลอื่นๆ เพิ่มเติมของ PHP
ได้ที่
PHP
- http://www.php.net
บางครั้งก็มีการนำคำย่อของ
LAMP ไปใช้กับแอพปริเคชั่นอื่นๆ
ที่นอกเหนือจากที่กล่าวไว้ข้างต้น ตัวอย่างเช่น การนำคำย่อ P
ไปแทนด้วย Perl หรือ
Python ที่ทำหน้าที่ Server-Side
Application เช่นกัน และในบางครั้งก็ขยายขอบเขตรวมไปถึง Ruby
ด้วยเมื่อมองในแง่ของโครงสร้างการทำงาน
และบางกลุ่มก็ได้มีการสลับการอ้างอิงของต่อย่อเพื่อให้เข้าได้กับความหมายของซอฟต์แวร์ที่กลุ่มตนเลือกใช้
ตัวอย่างเช่น จะให้ M แทนส่วนที่เป็น
mod* perl หรือ mod
python และให้ P แทนด้วย
PostgreSQL ที่ทำหน้าที่เป็นดาต้าเบสซึ่งเป็นฟรี
DBMS เช่นกัน
บางกลุ่มก็มีการเปลี่ยนคำย่อ
LAMP ไปเป็นอย่างอื่น
แต่มีรูปแบบของโครงสร้างแบบเดียวกัน อย่างเช่นได้เปลี่ยนไปเป็น LAMR
ซึ่ง R นั้นได้แทน
Ruby on Rails ที่เป็นซอฟต์แวร์ทำหน้าที่ Server-Side
Application เช่นกันกับ PHP
นอกจากนั้นก็มีการเรียกขานในรูปแบบต่างๆ
เพื่อให้สอดคล้องกับระบบที่กลุ่มนั้นๆ ได้ใช้งานเช่นในกลุ่มที่ใช้ Mac
OSX เป็น Operating systems นั้นก็กำหนดคำว่า
AMP ซึ่งได้ตัวเอา L ที่มีความหมายเป็น
Linux ออกไป
* mod เป็นส่วนเพิ่มในซอฟต์แวร์
(Plugins) เพื่อจะขยายขีดความสามารถของซอฟต์แวร์นั้นๆ
ออกไปได้อีกเช่น mod perl ก็จะเป็นส่วนขยายเพื่อให้
Apache Web Server รองรับการทำงานกับ Perl
ได้
Posted at 01:49หลังเที่ยง ก.พ. 04, 2008 by wut in Thai Technical | Comments[0]