เราเข้าใจเบื้องต้นแล้วว่า Server คือเครื่องหรือระบบที่ให้บริการแก่ผู้ใช้งานหรือไคลเอนต์ในเครือข่าย ในความเป็นจริง เซิร์ฟเวอร์สามารถแบ่งออกได้หลายประเภทตามลักษณะงานหรือจุดประสงค์การใช้งาน ในบทนี้ เราจะเจาะลึกประเภทของเซิร์ฟเวอร์ที่พบได้บ่อยหรือมีความสำคัญในโครงสร้างพื้นฐานด้านไอที
Web Server
Web Server (เว็บเซิร์ฟเวอร์)
คือเซิร์ฟเวอร์ที่ทำหน้าที่ให้บริการข้อมูลหน้าเว็บเพจผ่านโปรโตคอล HTTP (หรือ
HTTPS) เมื่อมีผู้ใช้ (Client) พิมพ์
URL บนบราวเซอร์ เช่น Google Chrome,
Firefox, Safari หรือ Edge บราวเซอร์นั้น
ๆ จะส่งคำร้อง (Request) ไปยัง Web Server เพื่อขอไฟล์
HTML, รูปภาพ, CSS, JavaScript หรือเนื้อหาอื่น
ๆ ที่เกี่ยวข้อง เพื่อนำมาแสดงผลให้ผู้ใช้เห็นหน้าเว็บตามที่ร้องขอ
ในปัจจุบัน Web Server ที่เป็นที่นิยม ได้แก่ Apache HTTP Server, Nginx, Microsoft IIS (Internet Information Services) รวมถึง LiteSpeed และ Caddy เป็นต้น โดย Web Server เหล่านี้สามารถทำงานร่วมกับภาษาสคริปต์ข้างเซิร์ฟเวอร์ (Server-Side Scripting) อย่าง PHP, Python, Ruby, Node.js เพื่อรันโปรแกรมพลวัต (Dynamic Web Application) ได้อีกด้วย
เว็บเซิร์ฟเวอร์มีความสำคัญอย่างยิ่งสำหรับธุรกิจออนไลน์ หรือองค์กรที่ต้องการเผยแพร่ข้อมูลผ่านเว็บไซต์ ไม่ว่าจะเป็นเว็บไซต์ภายในองค์กร (Intranet) หรือเว็บไซต์ภายนอก (Internet) นอกจากนี้ยังรวมถึงเว็บแอปพลิเคชัน เช่น ระบบสารสนเทศ ระบบจัดการลูกค้าสัมพันธ์ (CRM) หรือระบบจัดการงานภายใน (Work Management System) อีกด้วย
Database Server
Database Server (ดาต้าเบสเซิร์ฟเวอร์)
คือเซิร์ฟเวอร์ที่มีหน้าที่หลักในการจัดเก็บและจัดการฐานข้อมูล (Database) ซึ่งเป็นองค์ประกอบสำคัญในระบบสารสนเทศต่าง
ๆ ไม่ว่าจะเป็นระบบ ERP, CRM, การเงินการธนาคาร, การจัดการโรงแรม
หรือแม้กระทั่งระบบเว็บบอร์ดออนไลน์ เป็นต้น โดยทั่วไป Database Server จะใช้ระบบจัดการฐานข้อมูลเชิงสัมพันธ์
(RDBMS) เช่น MySQL, Microsoft SQL Server,
Oracle Database, PostgreSQL หรือระบบจัดการฐานข้อมูลแบบ NoSQL เช่น
MongoDB, Cassandra, Redis เป็นต้น ในการติดตั้งใช้งาน Database
Server อาจอยู่บนเครื่องเดียวกับ Application
Server หรือ Web Server ก็ได้
(ในระบบขนาดเล็ก) แต่สำหรับระบบขนาดใหญ่ มักจะแยกเครื่อง Database Server ออกมาเพื่อให้สามารถประมวลผลได้มีประสิทธิภาพมากขึ้น
และลดภาระเครื่องอื่น ๆ
Database Server จะต้องได้รับการดูแลทั้งในด้านประสิทธิภาพ (Performance) และความปลอดภัย (Security) เป็นพิเศษ เช่น มีการปรับแต่งคอนฟิก (Configuration) ให้เหมาะสมกับทรัพยากรเครื่อง การทำ Indexing อย่างเหมาะสม การสำรองข้อมูล (Backup) อย่างสม่ำเสมอ ไปจนถึงการตั้งระบบ Replication หรือ Clustering เพื่อป้องกันความเสียหายหรือ Downtime และรับมือกับโหลดงานจำนวนมาก
File Server
File Server (ไฟล์เซิร์ฟเวอร์)
เป็นเซิร์ฟเวอร์ที่ใช้สำหรับเก็บไฟล์ต่าง ๆ ไม่ว่าจะเป็นเอกสาร รูปภาพ วิดีโอ
หรือข้อมูลดิจิทัลอื่น ๆ แล้วเปิดให้ผู้ใช้หรือไคลเอนต์อื่น ๆ
ในเครือข่ายสามารถเข้าถึงไฟล์เหล่านั้นได้ตามสิทธิ์และบทบาท (Permission
& Role) ที่กำหนด
โดยโปรโตคอลที่ใช้ในการสื่อสารระหว่างผู้ใช้กับไฟล์เซิร์ฟเวอร์อาจเป็น SMB
(Server Message Block) สำหรับ Windows หรือ
NFS (Network File System) สำหรับ Linux/Unix หรือบางครั้งก็ใช้
FTP/SFTP
File Server มักถูกนำมาใช้ในองค์กรเพื่อเป็นศูนย์กลางในการจัดเก็บข้อมูล และอำนวยความสะดวกให้พนักงานเข้าถึงหรือแก้ไขไฟล์ร่วมกันได้อย่างง่ายดาย ป้องกันข้อมูลซ้ำซ้อน และมีการจัดเวอร์ชัน (Versioning) หรือการสำรองข้อมูล (Backup) ให้พร้อมเมื่อเกิดเหตุไม่คาดฝัน
Mail Server
Mail Server (เมลเซิร์ฟเวอร์)
คือเซิร์ฟเวอร์ที่ดูแลการรับส่งอีเมลในเครือข่าย
ซึ่งเราอาจคุ้นเคยกับบริการอีเมลอย่าง Gmail, Outlook, Yahoo เป็นต้น
แต่ในองค์กรใหญ่ ๆ หรือผู้ให้บริการโฮสติ้ง มักจะมี Mail Server เป็นของตนเอง
เพื่อควบคุมดูแลนโยบายการรับส่งอีเมล การกรองสแปม
ตลอดจนตั้งค่าอีเมลโดเมนเฉพาะขององค์กร โปรโตคอลที่เกี่ยวข้องกับการสื่อสารบน Mail
Server ได้แก่ SMTP (Simple Mail Transfer
Protocol) สำหรับการส่งอีเมล และ POP3, IMAP สำหรับการรับอีเมลฝั่งไคลเอนต์
Mail Server สามารถใช้ซอฟต์แวร์โอเพนซอร์ส เช่น Postfix, Exim, Dovecot, Courier หรือซอฟต์แวร์เชิงพาณิชย์อื่น ๆ ขึ้นอยู่กับความต้องการและงบประมาณในการดูแลรักษา เนื่องจากอีเมลเป็นช่องทางสื่อสารที่สำคัญและเป็นเป้าหมายของสแปม (Spam) หรือมัลแวร์ (Malware) การดูแลด้านความปลอดภัย เช่น การเข้ารหัส (Encryption), การตั้งค่า SPF, DKIM, DMARC และการอัปเดตแพตช์ซอฟต์แวร์สม่ำเสมอ จึงเป็นสิ่งสำคัญยิ่ง
Application Server
Application Server (แอปพลิเคชันเซิร์ฟเวอร์)
คือเซิร์ฟเวอร์ที่รับผิดชอบด้านการประมวลผลตรรกะ (Logic) ของโปรแกรมหรือบริการเชิงธุรกิจ
(Business Logic) ต่าง ๆ โดยมักจะใช้ร่วมกับ Web Server เพื่อสร้างเว็บแอปพลิเคชันที่มีการทำงานเบื้องหลังซับซ้อน
เช่น ระบบจองตั๋วเครื่องบิน ระบบธนาคารออนไลน์ ระบบอีคอมเมิร์ซ
หรือระบบจัดการเนื้อหา (CMS)
ตัวอย่างของแพลตฟอร์มแอปพลิเคชันเซิร์ฟเวอร์ ได้แก่ Apache Tomcat, JBoss (WildFly), GlassFish, IBM WebSphere, Microsoft .NET Framework หรือ Node.js (แม้ Node.js จะสามารถทำหน้าที่เป็น Web Server ได้ด้วยในตัว) ในหลายองค์กรอาจรวม “เว็บเซิร์ฟเวอร์” กับ “แอปพลิเคชันเซิร์ฟเวอร์” ไว้ในเครื่องเดียวกัน หากระบบไม่ใหญ่มาก หรืออาจกระจายหลายเครื่องโดยใช้ Load Balancer หากจำนวนผู้ใช้งานมีมากและต้องการความพร้อมใช้งานสูง
DNS Server
DNS Server (ดีเอ็นเอสเซิร์ฟเวอร์)
มีหน้าที่แปลงชื่อโดเมน (Domain Name) เช่น www.example.com ให้กลายเป็นหมายเลข
IP (Internet Protocol) ที่เครื่องหรืออุปกรณ์คอมพิวเตอร์ใช้ในการสื่อสารกันบนเครือข่ายอินเทอร์เน็ต
หากไม่มี DNS หรือ DNS ทำงานผิดพลาด
เราจะไม่สามารถเข้าถึงเว็บไซต์ผ่านชื่อโดเมนได้เลย จะต้องจำ IP Address แบบตัวเลข
ซึ่งทั้งยากต่อการจำและไม่สะดวก
ซอฟต์แวร์ DNS ที่นิยมใช้งาน ได้แก่ BIND (Berkeley Internet Name Domain), Microsoft DNS, PowerDNS, NSD, Knot DNS เป็นต้น โดยผู้ให้บริการอินเทอร์เน็ต (ISP) ก็มักมี DNS Server ของตนเอง หรือเราจะใช้ DNS Public ของ Google (8.8.8.8, 8.8.4.4) หรือ Cloudflare (1.1.1.1) ก็ได้
DHCP Server
DHCP Server (ดีเอชซีพีเซิร์ฟเวอร์)
เป็นบริการที่ใช้ “แจกจ่าย” หรือกำหนดค่า IP Address ให้แก่เครื่องไคลเอนต์หรืออุปกรณ์ต่าง
ๆ โดยอัตโนมัติ เมื่อเครื่องไคลเอนต์เชื่อมต่อเข้ากับเครือข่าย ระบบ DHCP จะตรวจสอบว่ามี
IP Address ว่างอยู่หรือไม่ แล้วจึงส่ง IP Address นั้นให้เครื่องไคลเอนต์
พร้อมข้อมูลการตั้งค่าเครือข่ายอื่น ๆ เช่น Subnet Mask, Default Gateway,
DNS Server ฯลฯ
เพื่อให้การเชื่อมต่อเครือข่ายเป็นไปอย่างสะดวก รวดเร็ว และไม่เกิด IP
Conflict ในเครือข่าย สำหรับองค์กรหรือเครือข่ายขนาดใหญ่ การใช้ DHCP
Server จะช่วยลดภาระในการต้องตั้งค่า IP
Address แบบคงที่ (Static IP) ให้กับเครื่องลูกข่ายแต่ละเครื่องด้วยตนเอง
ยิ่งไปกว่านั้น
ยังช่วยลดความผิดพลาดในการตั้งค่าที่อาจทำให้เครื่องบางเครื่องใช้งานเครือข่ายไม่ได้
Proxy Server
Proxy Server (พร็อกซีเซิร์ฟเวอร์)
ทำหน้าที่เป็นตัวกลางระหว่างไคลเอนต์กับเซิร์ฟเวอร์ปลายทาง
โดยเมื่อไคลเอนต์ต้องการเชื่อมต่อไปยังเว็บไซต์หรือบริการออนไลน์ใด ๆ
ไคลเอนต์จะส่งคำร้องมายัง Proxy Server ก่อน แล้ว Proxy Server จะเป็นผู้ดำเนินการติดต่อกับเซิร์ฟเวอร์ปลายทาง
จากนั้นจึงส่งข้อมูลกลับไปยังไคลเอนต์
เหตุผลในการใช้ Proxy Server มีหลายประการ
เช่น
Caching: เก็บสำเนาเนื้อหาเว็บไว้ในเซิร์ฟเวอร์เพื่อลดแบนด์วิธและเร่งความเร็วในการเข้าถึง
Security & Anonymity: ปกปิดตัวตนของไคลเอนต์
ไม่ให้เซิร์ฟเวอร์ปลายทางทราบที่อยู่ IP จริง
หรือตั้งไฟร์วอลล์เพื่อกลั่นกรองทราฟฟิก
Access Control: ควบคุมการเข้าถึงเว็บไซต์
หรือจำกัดสิทธิ์พนักงานในองค์กรให้เข้าถึงเฉพาะบางเว็บเท่านั้น
FTP Server
FTP Server (เอฟทีพีเซิร์ฟเวอร์) คือเซิร์ฟเวอร์ที่ใช้โปรโตคอล
FTP (File Transfer Protocol) หรือ SFTP (Secure File
Transfer Protocol) เพื่ออัปโหลด ดาวน์โหลด
และจัดการไฟล์ในระบบผ่านเครือข่าย โปรโตคอล FTP ถือเป็นหนึ่งในโปรโตคอลพื้นฐานที่มีอายุมายาวนาน
และยังคงใช้กันอย่างแพร่หลาย โดยเฉพาะในการส่งไฟล์ขนาดใหญ่หรือเมื่อใช้ซอฟต์แวร์อัตโนมัติ
(Automation) ผู้ดูแลระบบอาจใช้งาน FTP Server ร่วมกับซอฟต์แวร์เช่น
vsftpd (Very Secure FTP Daemon), ProFTPD, Pure-FTPd หรือ
FileZilla Server บางครั้งจะเปิดบริการ SFTP แทน
(ซึ่งใช้ SSH) เพื่อเพิ่มความปลอดภัยในการถ่ายโอนไฟล์
ป้องกันการดักฟังหรือแก้ไขข้อมูลระหว่างทาง
Virtual Server
Virtual Server (เซิร์ฟเวอร์เสมือน) เกิดจากแนวคิด Virtualization
หรือการจำลองทรัพยากรฮาร์ดแวร์ให้กลายเป็นหลาย ๆ เครื่องเสมือน (VM:
Virtual Machine) ภายในเครื่อง Physical Server ตัวเดียว
โดยใช้ซอฟต์แวร์ประเภท Hypervisor เช่น VMware ESXi, Microsoft
Hyper-V, KVM, Xen หรือ Oracle VirtualBox (ในกรณี
Desktop)
Virtual Server มีข้อดีหลายอย่าง เช่น
- ใช้ทรัพยากรฮาร์ดแวร์ได้คุ้มค่าขึ้น
- แยกระบบแต่ละตัวออกจากกัน
ป้องกันปัญหาขัดแย้งระหว่างซอฟต์แวร์
- ย้ายเครื่องเสมือนไปยัง Physical Host อื่นได้ง่ายในกรณีฮาร์ดแวร์เครื่องเดิมมีปัญหา
- สร้าง Snapshot หรือ
Clone เพื่อสำรองสภาพแวดล้อมได้เร็ว
ในหลายองค์กรจะใช้เทคนิค Virtualization
เพื่อลดต้นทุนด้านฮาร์ดแวร์และการดูแล
รวมถึงเพิ่มความยืดหยุ่นในการปรับขยาย (Scalability) ด้วย
Cloud Server
Cloud Server (คลาวด์เซิร์ฟเวอร์)
คือแนวทางการให้บริการเซิร์ฟเวอร์ผ่านเทคโนโลยี Cloud Computing ทำให้ผู้ใช้ไม่จำเป็นต้องลงทุนซื้อฮาร์ดแวร์จริง
แต่สามารถ “เช่า” ทรัพยากรเซิร์ฟเวอร์บนศูนย์ข้อมูลของผู้ให้บริการคลาวด์ เช่น Amazon
Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), Alibaba Cloud
และอื่น ๆ อีกมากมาย ผู้ใช้สามารถเลือกรูปแบบได้หลากหลาย เช่น
IaaS (Infrastructure as a Service): ผู้ใช้เลือกขนาด
VM, ระบบปฏิบัติการ แล้วติดตั้งซอฟต์แวร์เอง
PaaS (Platform as a Service): ผู้ใช้เน้นพัฒนาแอปพลิเคชัน
แล้วใช้แพลตฟอร์มที่ผู้ให้บริการจัดการให้
SaaS (Software as a Service): ผู้ใช้ใช้งานแอปพลิเคชันสำเร็จรูปผ่านอินเทอร์เน็ต
Cloud Server มีความยืดหยุ่นสูง สามารถขยาย (Scale) หรือลดทรัพยากรได้ตลอดเวลา จ่ายเงินตามการใช้งานจริง และยังมีระบบรักษาความปลอดภัย ฟีเจอร์ High Availability, Load Balancing, Backup, Disaster Recovery ที่ครบครัน ทำให้เป็นที่นิยมอย่างแพร่หลายในยุคปัจจุบัน