นิยามของคำว่า "แม่ข่าย หรือ เซิร์ฟเวอร์ (Server)" คือซอฟต์แวร์ หรือ เครื่องคอมพิวเตอร์ หรืออุปกรณ์ใด ๆ ก็ตาม ที่คอยให้บริการข้อมูล หรือบริการต่าง ๆ ให้กับ "ลูกข่าย หรือ ไคลเอนต์" (Client)" ซึ่งอาจเป็นคอมพิวเตอร์, สมาร์ทโฟน, ซอฟต์แวร์ หรือแอปพลิเคชันก็ได้ โดยจะส่งมอบข้อมูล หรือบริการผ่านระบบเครือข่าย
โอเค จบ ถ้าขี้เกียจอ่านต่อก็ปิดได้เลย
...ถ้าอ่านถึงบรรทัดนี้แสดงว่า คุณผู้อ่านอยากรู้รายละเอียดเกี่ยวกับเซิร์ฟเวอร์มากกว่านั้น ในบทความนี้ ก็จะมาอธิบายถึงว่า เซิร์ฟเวอร์คืออะไร ? ทำงานอย่างไร ?
คำว่า "เซิร์ฟเวอร์ (Server)" หรือภาษาไทยคือ "แม่ข่าย" คือ เครื่องคอมพิวเตอร์ที่มีคุณสมบัติในการคำนวณ, จัดเก็บข้อมูล และจัดการกับระบบต่าง ๆ เพื่อเป็นแหล่งทรัพยากรให้กับอุปกรณ์ในเครือข่าย ตัวอย่างเช่นการแสดงหน้าเว็บไซต์ หรือการรับส่งอีเมล ข้อมูลเหล่านี้จะถูกเก็บอยู่บนเซิร์ฟเวอร์เป็นหลัก
คอมพิวเตอร์, ซอฟต์แวร์ หรือแม้แต่เครื่องจำลองเสมือนจริง (Virtual Machine) สามารถทำหน้าที่เป็นเซิร์ฟเวอร์ได้ อย่างไรก็ตาม คุณสมบัติหลายอย่างของเซิร์ฟเวอร์มันเกิดขีดความสามารถที่คอมพิวเตอร์ทั่วไปจะรับมือได้ไหว เพราะเซิร์ฟเวอร์ต้องรับผิดชอบงานที่มีความซับซ้อนเป็นจำนวนมาก ตั้งแต่การคำขอจากผู้ใช้งานจำนวนมากที่ถูกส่งเข้ามาในเวลาเดียวกัน, การเป็นโฮสต์ของเว็บไซต์ที่มีผู้เข้าชมจำนวนมหาศาล, ไดร์ฟเก็บข้อมูลขนาดใหญ่สำหรับพนักงานหลายร้อยคน ฯลฯ ซึ่งการแลกเปลี่ยนข้อมูลระหว่าง Client กับฐานข้อมูลนั้น จำเป็นต้องใช้ทรัพยากรของคอมพิวเตอร์ในการทำงานที่สูงมาก ฮาร์ดแวร์ที่อยู่ในคอมพิวเตอร์ทั่วไปมีประสิทธิภาพไม่สูงพอที่จะประมวลผลคำร้องจำนวนมากได้ทัน
การตอบสนองของเซิร์ฟเวอร์ไปยังคำขอของผู้ใช้นี้ถูกเรียกว่า "Client-Server Model" โดยอุปกรณ์ที่ทำหน้าเก็บและบริหารทรัพยากรจะถูกเรียกว่าโฮสต์เซิร์ฟเวอร์ (Host-Server) ส่วนอุปกรณ์ที่เชื่อมต่อไปที่โฮสต์เพื่อเรียกใช้ทรัพยากรจะถูกเรียกว่าไคลเอนต์ (Clients)
ในการทำงานของเซิร์ฟเวอร์ จะมีองค์ประกอบพื้นฐานที่จำเป็นต้องการทำงานอยู่ 4 อย่าง เพื่อให้มันสามารถประมวลผล, รับ-ส่งข้อมูล และเก็บข้อมูล ถึงแม้ว่าในปัจจุบัน องค์ประกอบเหล่าก็มีอยู่ใน คอมพิวเตอร์ PC, โน้ตบุ๊ก (Notebook), สมาร์ทโฟน หรือแม้แต่ อุปกรณ์ IoT แต่ในเครื่องเซิร์ฟเวอร์จะมีประสิทธิภาพการทำงานที่สูงกว่ามาก
สำหรับ หน่วยประมวลผลกลาง (CPU) เป็นส่วนประกอบหลักที่มีอยู่ในเซิร์ฟเวอร์ทุกประเภท ทำหน้าที่เป็นมันสมองของระบบ เครื่องเซิร์ฟเวอร์ในปัจจุบันนี้จะใช้ CPU ที่มี คอร์ (Core) จำนวนมาก เพื่อรองรับการประมวลผลคำสั่งที่ถูกป้อนเข้ามาหลายพันคำสั่งได้พร้อมกันในทีเดียว CPU ที่ได้รับความนิยมในการทำเครื่องเซิร์ฟเวอร์ก็อย่างเช่น Xeon จาก Intel, EPYC จาก AMD, HPE จาก HP, TaiShan จาก Huawei ฯลฯ
ในขณะที่ หน่วยความจำหลัก (RAM) เป็นหน่วยความจำแบบชั่วคราว ที่ใช้ในการเก็บข้อมูลของงานที่กำลังทำอยู่ รวมถึงโค้ดที่จำเป็นต่อการทำงานของระบบด้วย หน่วยประมวลผลจำเป็นต้องอาศัย RAM เข้ามาช่วยเพิ่มความเร็วในการอ่าน และเขียนข้อมูล เนื่องจากเซิร์ฟเวอร์ต้องรับภาระงานจำนวนมหาศาล ที่เกิดจากคำร้องที่ Client ส่งเข้ามา การดึงข้อมูลจาก RAM จะช่วยเพิ่มความเร็วในการทำงานของเซิร์ฟเวอร์ให้สูงขึ้นกว่าการอ่านจาก ฮาร์ดไดร์ฟ (Harddrive)
เซิร์ฟเวอร์ต้องมี Storage สำหรับเก็บไฟล์ที่จำเป็นต่อการทำงาน ซึ่งก็มีตั้งแต่ ระบบปฏิบัติการ (Operating System), ไลบรารี่ (Library), ระบบจัดการฐานข้อมูล (DBMS), ข้อมูลเว็บไซต์ (Website Data), ข้อมูลแอปพลิเคชัน (Application Data) ฯลฯ ซึ่งตัวเลือกของไดร์ฟอาจเป็น HDD แบบดั้งเดิม หรือ อุปกรณ์เก็บข้อมูลแบบ SSD ก็ได้ ขึ้นอยู่กับความต้องการในการใช้งานของระบบ อย่างไรก็ตาม เซิร์ฟเวอร์ส่วนใหญ่มักจะมีไดร์ฟเก็บข้อมูลอยู่หลายตัว เพื่อทำระบบ ระบบ RAID ซึ่งจะช่วยให้ข้อมูลถูกเก็บรักษาอย่างปลอดภัยมากขึ้น
เซิร์ฟเวอร์รับคำร้องจากผู้ใช้ และส่งเนื้อหาคำตอบกลับไปให้ผ่านระบบเครือข่าย ซึ่งอาจจะผ่านเครือข่ายอินเทอร์เน็ต (Internet) หรือจะเป็น เครื่อข่าย WAN หรือ เครือข่าย LAN ก็ได้ เพื่อให้การทำงานเป็นไปอย่างราบรื่น ไม่เกิดการจราจรติดขัดเมื่อผู้ใช้งานหรือ Client ในระบบอยู่เป็นจำนวนมาก อัตราการส่งถ่ายข้อมูล หรือ Bandwidth จึงเป็นอีกหนึ่งองค์ประกอบที่สำคัญมากของเซิร์ฟเวอร์เช่นกัน
ภาพจาก : https://www.nextplatform.com/2020/08/04/datacenter-is-the-new-unit-of-compute-open-networking-is-how-to-automate-it/
มาดูการทำของระบบเซิร์ฟเวอร์กัน ซึ่งอาจมีความแตกต่างกันไปตามชนิดของเซิร์ฟเวอร์ แต่โดยพื้นฐานแล้วจะมีความคล้ายคลึงกัน สำหรับในบทความนี้ จะยกตัวอย่างเป็นเว็บเซิร์ฟเวอร์มา เนื่องจากมีความใกล้ตัวผู้ใช้มากที่สุด จะได้เข้าใจง่าย ๆ
เมื่อผู้ใช้งาน (Client) ป้อน ที่อยู่ URL ของเว็บไซต์ในเว็บเบราว์เซอร์ เซิร์ฟเวอร์ที่เชื่อมต่อกับเครือข่ายอินเทอร์เน็ตอยู่ ซึ่งอาจมีอยู่หลายเซิร์ฟเวอร์ พวกมันจะอยู่ในสถานะที่เฝ้ารอรับข้อมูลคำร้อง (Requested) การประมวลจะเริ่มต้นร่วมกับเว็บเบราว์เซอร์โดยแบ่งออกเป็น 3 ส่วน ดังนี้
ส่วนแรกจะเป็นโปรโตคอล (Protocol) การเชื่อมต่อแบบ HTTP หรือ HTTPS ที่เป็นเหมือนเส้นทางที่เซิร์ฟเวอร์ และตัวเบราว์เซอร์ใช้ในการสื่อสารหากัน
ส่วนที่สองของ URL จะมีความเกี่ยวข้องกับชื่อเซิร์ฟเวอร์ โดยจะใช้ Domain Name Server (DNS) เป็นสื่อกลางในการแปลงจาก DNS ให้เป็น หมายเลขที่อยู่ไอพี (IP Address) ของโฮสต์ที่รับคำร้องที่อยู่เว็บไซต์
ส่วนสุดท้ายจะเป็นการรวบรวมไฟล์ทุกอย่างเข้าไว้ด้วยกัน ซึ่งจะประกอบไปด้วย HTML, CSS, ฟอนต์, รูปภาพ, กราฟิก และไฟล์ทั้งหมดตามคำร้อง (Requested) ของเว็บไซต์
ภาพจาก : https://www.freeparking.co.nz/learn/what-is-dns-server/
เริ่มต้นจากการที่เว็บเบราว์เซอร์ส่งคำร้อง Domain Name ไปยัง DNS และหลังจากนั้น DNS จะตรวจสอบยืนยัน IP Address ตามคำร้องที่ได้รับมา หลังจากได้ข้อมูลค่า IP Address มาแล้ว เว็บเบราว์เซอร์จะสามารถเริ่มเชื่อมต่อไปยังเซิร์ฟเวอร์เป้าหมายได้ ทางฝั่งเซิร์ฟเวอร์จะทำการรวบรวมข้อมูลที่จำเป็นต่อการแสดงผลหน้าเว็บไซต์ ส่งกลับมายังผู้ใช้ตามคำร้องที่ได้รับ
ในปัจจุบันนี้มีเซิร์ฟเวอร์อยู่หลายประเภท แบ่งตามคุณลักษณะในการใช้งาน ซึ่งมีอยู่หลายด้าน เช่น ใช้โฮสต์เว็บไซต์, รับส่งอีเมล, เก็บสำรองไฟล์, การประมวลผลบนคลาวด์ (Cloud Computing) ฯลฯ ประเภทของเซิร์ฟเวอร์หลัก ๆ จะมีดังต่อไปนี้
เว็บเซิร์ฟเวอร์ถูกออกแบบมาเพื่อใช้ในการรันเว็บไซต์ และแอปพลิเคชัน ผ่านซอฟต์แวร์ไคลเอนต์ (เว็บเบราว์เซอร์) อย่างเช่น โปรแกรม Google Chrome, Firefox, Opera, Safari, Microsoft Edge ฯลฯ มันมีหน้าที่การเก็บข้อมูล และประมวลผลเพื่อส่งเนื้อหาของเว็บไซต์ตามคำร้องของผู้ใช้ ทำงานผ่านโปรโตคอลอย่าง HTTP, HTTPS, FTP และ SMTP ในการแลกเปลี่ยนข้อมูลระหว่างอุปกรณ์ผ่านระบบเครือข่าย
ภาพจาก : https://www.geeksforgeeks.org/what-is-a-web-server-working-and-architecture/
เมลเซิร์ฟเวอร์ช่วยอำนวยความสะดวกในการจัดเก็บ และบริหารอีเมลให้กับผู้ใช้งาน มีหลายโปรโตคอลที่ใช้ในการส่ง และรับอีเมล อย่างเช่น SMTP จะใช้ในการส่งอีเมล และใช้ Post Office Protocol (POP3) ในการรับ และจัดเก็บอีเมล
หากนึกภาพไม่ออก ให้นึกภาพว่าเมลเซิร์ฟเวอร์เป็นเหมือนสำนักงานไปรษณีย์ที่มีหน้าที่เก็บจดหมาย และนำมาจัดระเบียบก่อนที่จะนำส่งจดหมายไปยังปลายทางที่กำหนด ตอนที่เรากดส่งอีเมล เราไม่ได้ส่งไปหาผู้รับโดยตรง อีเมลจะถูกส่งไปจัดการที่เซิร์ฟเวอร์เพื่อหาที่อยู่ของผู้รับ ก่อนจะส่งต่อไป
ภาพจาก : https://jerry4013.github.io/Github-blog/2019/05/05/mailserver.html
แอปพลิเคชันเซิร์ฟเวอร์ นำเสนอสภาพแวดล้อมที่ช่วยในการพัฒนา, ประมวลผล และการทำงานของ แอปพลิเคชันที่ทำงานบนเว็บไซต์ (Web-Based Application) โดยตัวเซิร์ฟเวอร์จะรันซอฟต์แวร์คอมพิวเตอร์ หรือสคริปท์ที่จำเป็นต่อการทำงานของ PHP, Java, Net Applications ฯลฯ
โดยพื้นฐานแล้ว แอปพลิเคชันเซิร์ฟเวอร์ มีรูปแบบการทำงานค่อนข้างคล้ายคลึงกับเว็บเซิร์ฟเวอร์ มีการใช้โปรโตคอล HTTP/HTTPS และมีหน้าที่ตอบสนองคำร้อง (Request) จากผู้ใช้เหมือนกัน อย่างไรก็ตาม แอปพลิเคชันเซิร์ฟเวอร์ จะมุ่งเน้นไปที่การทำงานแบบ Dynamic Websites ที่ใช้ในการทำงานของ Object Pooling (การออกแบบที่มักใช้ในเกม หรือแอปพลิเคชัน โดยหลีกเลี่ยงการสร้าง Object ใหม่ และทำลาย Object เก่าในระหว่างการทำงาน แต่จะใช้ Object ที่มีอยู่ใน Pool ซึ่งถูกสร้างไว้ล่วงหน้า และสามารถนำกลับมาใช้ซ้ำได้), บริการรับส่งข้อความ, Blogs, เว็บซื้อขายออนไลน์ ฯลฯ ในขณะที่เว็บเซิร์ฟเวอร์ จะเน้นไปทาง Static Websites ที่ข้อมูลส่วนใหญ่แสดงผลแบบคงที่ ตายตัว ไม่มีความเปลี่ยนแปลงเกิดขึ้นบ่อยครั้ง
ภาพจาก : https://www.geeksforgeeks.org/object-pool-design-pattern/
ในบางกรณี ภายในตัวแอปพลิเคชันเซิร์ฟเวอร์ จะรวมเอาเว็บเซิร์ฟเวอร์เข้าไว้ด้วยกัน เพื่อให้สามารถใช้งานคุณสมบัติของเว็บเซิร์ฟเวอร์ได้ในสถานการณ์ที่จำเป็น
เซิร์ฟเวอร์ฐานข้อมูล ทำหน้าที่ให้บริการฐานข้อมูลให้กับอุปกรณ์ที่เป็น Client เช่น คอมพิวเตอร์ หรือสมาร์ทโฟน ผู้ใช้งานสามารถเข้าถึง, แก้ไข, บันทึก และดาวน์โหลดข้อมูลจากฐานข้อมูลได้ผ่านการ Query (คำสั่งที่ใช้ในการดึงข้อมูลจากฐานข้อมูลมาเพื่อใช้งาน โดยทั่วไปแล้วจะเขียนด้วยภาษา SQL เป็นต้น
ในองค์กร หรือบริษัทขนาดใหญ่นิยมใช้เซิร์ฟเวอร์ชนิดนี้ในการบันทึกข้อมูลที่มีความสำคัญ และต้องการรักษาความลับ และความปลอดภัย เซิร์ฟเวอร์ฐานข้อมูลที่ได้รับความนิยมก็อย่างเช่น Microsoft SQL, MySQL, MongoDB และ SQLite
ภาพจาก : https://www.guru99.com/sql-server-architecture.html
เนมเซิร์ฟเวอร์ หรือ DNS Server ก็ทำงานตามชื่อของมันเลย เป็นเซิร์ฟเวอร์ที่เก็บข้อมูลโดเมนเนม (Domain Name) เอาไว้ โดยเมื่อผู้ใช้ป้อน URL ลงในเว็บเบราว์เซอร์ มันจะส่งคำขอไปยัง DNS Server จากนั้นตัวเซิร์ฟเวอร์จะทำการค้นหาที่อยู่ IP Address ที่เกี่ยวข้องกับชื่อโดเมนนั้นในฐานข้อมูล เมื่อค้นเจอ IP Address แล้วก็จะส่งข้อมูลกลับไปมายังตัวอุปกรณ์ของผู้ใช้ ซึ่งตัวอุปกรณ์จะใช้ IP Address ที่ได้มาเพื่อเชื่อมต่อไปยังเซิร์ฟเวอร์ และดึงหน้าเว็บไซต์ขึ้นมาแสดงผล
ทั้งนี้ หากเรารู้ IP Address ของเว็บไซต์เป้าหมาย เราก็สามารถพิมพ์มันลงในเว็บเบราว์เซอร์แทน URL เลยก็ได้ แต่การจำชุดตัวเลขมันยากกว่าการจำชื่อ อย่างเว็บไซต์ www.thaiware.com ก็สามารถเข้าผ่าน หมายเลขไอพี 203.146.253.31 ได้ด้วยเช่นกัน (ไม่เชื่อลองดูครับ)
ภาพจาก : https://www.itrelease.com/2021/11/what-is-domain-name-server-dns-with-example/
Proxy Server ทำหน้าที่เป็นตัวกลางระหว่าง "Local Networks" กับ "Worldwide Networks" เพื่อให้สองเครือข่ายนี้สามารถสื่อสารหากันได้ โดยรับคำขอจากเครือข่ายหนึ่ง และส่งต่อโดยใช้ที่อยู่ IP Address ของตัวเองได้ ซึ่งเซิร์ฟเวอร์เหล่านี้จะมีการบันทึกข้อมูลของเว็บไซต์ที่มีการเข้าชมบ่อย เพื่อช่วยให้การเข้าชมหน้าเว็บไซต์เดิมซ้ำในอนาคตสามารถเชื่อมต่อได้เร็วขึ้น และช่วยลดความหนาแน่นการจราจรที่เกิดขึ้นบนแบนด์วิดได้ด้วย
นอกจากนี้ Proxy Server ยังคอยช่วยกรองการสื่อสารเครือข่าย (Network Communication) และพร้อมใช้งานตลอดเวลา ซึ่งมีความสำคัญสำหรับการปรับสมดุลโหลดของเครือข่าย หรือที่เรียกว่าการทำ Load Balacing ที่ช่วยให้การกระจายการรับส่งข้อมูลผ่านเครือข่ายเป็นไปอย่างเท่าเทียมกัน อีกทั้งยังช่วยปกป้องความเป็นส่วนตัวของผู้ใช้งานด้วย เพราะ IP Address ดั้งเดิมของผู้ใช้ จะถูก Proxy แทนที่
ภาพจาก : https://www.avg.com/en/signal/proxy-server-definition
สำหรับ เซิร์ฟเวอร์ DHCP หรือที่ย่อมาจากคำว่า "Dynamic Host Configuration Protocol" หมายถึงระบบที่ทำหน้าที่กำหนด และจัดสรรค่า IP Adress, Gateway และค่าพารามิเตอร์ต่าง ๆ ให้กับอุปกรณ์ฝั่ง Client โดยอัตโนมัติ ทำงานโดยใช้มาตรฐานโปรโตคอล DHCP
ประโยชน์ของการใช้ DHCP Server คือ ช่วยลดข้อผิดพลาดที่อาจขึ้นจากการกำหนดค่าที่ไม่เหมาะสมด้วยตนเอง นอกจากนี้ยังช่วยอัปเดตค่าต่าง ๆ ของอุปกรณ์ที่อยู่ในเครือข่ายให้ด้วย เช่น การอัปเดต IP Address ที่หมดอายุไปแล้ว หรือเปลี่ยนค่าเมื่ออุปกรณ์มีการย้ายตำแหน่ง
ภาพจาก : https://cyberlab.pacific.edu/courses/comp177/labs/lab-6-dhcp
File Server เป็นอุปกรณ์ที่ให้บริการพื้นที่เก็บข้อมูล ซึ่ง Client สามารถเชื่อมต่อเพื่อเข้าถึงไฟล์ต่าง ๆ ที่ถูกเก็บอยู่บนเซิร์ฟเวอร์ได้ ไม่ว่าจะเป็นไฟล์เอกสาร, รูป, กราฟิก, เสียง, วิดีโอ ฯลฯ จุดประสงค์หลักคือไว้เก็บไฟล์เป็นหลัก ดังนั้น โดยทั่วไปแล้ว ตัวเซิร์ฟเวอร์จะไม่ได้ติดตั้งซอฟต์แวร์ หรือมีหน้าที่ประมวลผลงานใด ๆ
มีโปรโตคอลหลายตัวที่ถูกนำมาใช้ ขึ้นอยู่กับแพลตฟอร์มที่ใช้งาน ตัวอย่างเช่น ถ้าเชื่อมต่อผ่านอินเทอร์เน็ตก็จะใช้โปรโตคอล FTP หรือไม่ก็ HTTP ในขณะที่ถ้าเป็นการใช้งานในวง เครือข่าย LAN ที่นิยมใช้กันภายในสำนักงาน หรือโรงเรียน ก็จะใช้โปรโตคอล SMB หรือ NFS
เกมในปัจจุบันนี้ส่วนใหญ่ก็จะรองรับการเล่นแบบผู้เล่นหลายคน มีระบบสื่อสารภายในเกม เพื่อให้ผู้เล่นเชื่อมต่อเล่นเกมด้วยกันได้ รวมไปถึงการเก็บข้อมูลของผู้เล่น อย่างเช่น เลเวล, ไอเทมภายในเกม ฯลฯ เพื่อให้สามารถเข้าเล่นเกมจากอุปกรณ์ไหนก็ได้
ภาพจาก : https://www.linkedin.com/pulse/how-does-any-mmo-games-backend-work-narendra-l/
เซิร์ฟเวอร์เครื่องพิมพ์ (Print Server) เป็นเซิร์ฟเวอร์สำหรับให้เครื่องพิมพ์เชื่อมต่อกับ Client ผ่านเครือข่ายได้ มันจะรับ "งานพิมพ์" จากผู้ใช้งาน แล้วจัดลำดับคิวให้กับเครื่องพิมพ์ เหมาะกับระบบที่มีพนักงานจำนวนมากต้องการใช้เครื่องพิมพ์ ถึงแม้ระบบของเครื่องพิมพ์บางรุ่นระรองรับการทำคิวงานผ่านเครือข่ายได้ แต่มันก็มักจะมีปัญหา ถ้าเกิดมีคิวจำนวนมากเกิดขึ้นในช่วงเวลาเดียวกัน จึงต้องมีการนำ Print Server เข้ามาช่วยแก้ปัญหา
โปรโตคอลที่นิยมใช้ในตัว Print Server ก็มีอยู่หลายตัว เช่น Internet Printing Protocol, Line Printer Daemon Protocol, JetDirect, IOGEAR, HP ฯลฯ
ภาพจาก : https://www.papercut.com/blog/print_basics/how-does-a-print-server-work/
ทุกวันนี้ มีเซิร์ฟเวอร์อยู่หลายประเภทดังที่เราได้กล่าวไปในหัวข้อที่แล้ว แต่หากกล่าวถึงจุดเริ่มต้นของเซิร์ฟเวอร์ก็ต้องย้อนกลับไปที่การพัฒนาเซิร์ฟเวอร์ตัวแรกที่ถูกสร้างขึ้นในยุค 90 กันเลยทีเดียว
ภาพจาก : https://www.techtarget.com/searchdatacenter/feature/Dive-into-the-history-of-server-hardware
ในปี ค.ศ. 1989 (พ.ศ. 2532) ทิม เบอร์เนิร์ส-ลี (Tim Berners-Lee) วิศวกร และนักวิทยาศาสตร์คอมพิวเตอร์ชาวอังกฤษ ได้คิดค้นเทคโนโลยี World Wide Web (WWW) ในขณะที่เขากำลังทำงานอยู่ที่องค์การวิจัยนิวเคลียร์ยุโรป European Organization for Nuclear Research (CERN) เขาสร้าง WWW ขึ้นมาเพื่อใช้มันเป็นระบบแบ่งปันข้อมูลแบบอัตโนมัติระหว่างนักวิทยาศาสตร์ทั่วโลก
ในวันที่ 25 ธันวาคม ค.ศ. 1990 (พ.ศ. 2533) ทิม เบอร์เนิร์ส-ลี ได้ติดตั้ง Web Server ตัวแรกของโลกลงในคอมพิวเตอร์ NeXT ที่มีอยู่ในศูนย์วิจัย สเปคของมันมีฮาร์ดดิสก์ความจุ 2 GB, หน้าจอแบบขาวดำ และCPU ความเร็วแค่เพียง 256 MHz บนตัวเครื่องมีแปะข้อความเอาไว้ว่า "นี่คือเครื่องเซิร์ฟเวอร์ ห้ามปิด !" ซึ่งปัจจุบันนี้ มันก็ยังถูกตั้งแสดงอยู่ที่ CERN
Web Server ตัวแรกของโลก
ภาพจาก : https://en.m.wikipedia.org/wiki/File:First_Web_Server.jpg
ส่วนหน้าเว็บไซต์หน้าแรกของโลก ก็เป็นลิงก์ข้อมูลเกี่ยวกับโครงการ World Wide Web และรายละเอียดเกี่ยวกับการสร้างเว็บเซิร์ฟเวอร์
เว็บไซต์หน้าแรกของโลก
ภาพจาก : https://www.businessinsider.com/flashback-this-is-what-the-first-website-ever-looked-like-2011-6
ในเดือนธันวาคม ค.ศ. 1991 (พ.ศ. 2534) มีการติดตั้ง Web Server นอกยุโรปเป็นครั้ง โดยมันถูกติดตั้งที่เมืองแคลิฟอร์เนีย ในศูนย์วิจัย Stanford Linear Accelerator Center (ปัจจุบันนี้คือ SLAC National Accelerator Laboratory) ถัดมาช่วงปลายปี ค.ศ. 1992 (พ.ศ. 2535) โครงการ WWW ได้มีการขยายตัวให้มีขนาดใหญ่ขึ้น และมีการสร้างลิสต์ข้อมูล Web Server ที่มีอยู่ในขณะนั้น
ปี ค.ศ. 1993 (พ.ศ. 2536) CERN ได้นำ World Wide Web เข้าสู่สถานะ Public Domain ให้อิสระในการใช้งานแก่สาธารณะ ส่งผลให้เกิดการเติบโตอย่างรวดเร็ว ในเดือนธันวาคมของปีเดียวกัน มี Web Server ที่สำรวจพบกว่า 500 แห่ง เพียงปีเดียวในช่วงปลายปี ค.ศ. 1994 (พ.ศ. 2537) ขยายไปจนมีเซิร์ฟเวอร์มากกว่า 10,000 แห่ง มีผู้ใช้งานมากกว่า 10,000,000 คนทั่วโลก
เมื่อผู้ใช้งานมีจำนวนมากขึ้น ความต้องการของเซิร์ฟเวอร์ก็เพิ่มมากขึ้น ทำให้มีการพัฒนาเทคโนโลยี Rackmounted Server ขึ้นมา โดยเซิร์ฟเวอร์ชนิดนี้ตัวแรกของโลกก็คือ ProLiant จากบริษัท Compaq ที่เปิดตัวในปี ค.ศ. 1993 (พ.ศ. 2536) มันเป็น Rack ที่มีช่องสำหรับยึดเซิร์ฟเวอร์อยู่หลายช่อง และสามารถวางซ้อนกันได้ด้วย ช่วยลดขนาดพื้นที่ในการติดตั้งเซิร์ฟเวอร์ได้อย่างมหาศาล
ภาพจาก : https://en.wikipedia.org/wiki/Compaq_SystemPro
อย่างไรก็ตาม การนำเซิร์ฟเวอร์มาอัดกันในพื้นที่ขนาดเล็กส่งผลให้เกิดความร้อนสะสมสูงมาก ทำให้การติดตั้งต้องทำในห้องที่มีระบบทำความเย็นแบบพิเศษ จนในที่สุดก็มีการพัฒนาจนเป็นห้องสำหรับเก็บเซิร์ฟเวอร์โดยเฉพาะ หรือที่เรียกกันว่า Server Rooms ซึ่งในอดีตมักถูกสร้างพื้นที่ว่างที่ไม่ถูกใช้งานภายในตึกของบริษัท ภายหลังก็มีการเพิ่มระบบตรวจสอบอุณหภูมิ และระบบรักษาความปลอดภัยเข้ามาด้วย ซึ่งกลายเป็นรากฐานให้กับการสร้างศูนย์ข้อมูล หรือ Data Center ในปัจจุบันนี้
ในปี ค.ศ. 2000 (พ.ศ. 2543) Christopher Hipp และ David Kirkeby ได้ยื่นจดสิทธิบัตร Blade Server หลังจากนั้นเพียงปีเดียว RLX Technologies บริษัทที่ทั้งคู่ทำงานอยู่ก็ได้วางจำหน่าย Blade Server เป็นครั้งแรกในเชิงพาณิชย์
Blade Server เป็นเซิร์ฟเวอร์รูปแบบใหม่ที่แก้ปัญหา และข้อจำกัดหลายอย่างที่มีอยู่ใน Rack Server มาอย่างยาวนาน โดยพวกเขาได้ลดจำนวนชิ้นส่วนที่จำเป็นต่อการทำงานให้น้อยลง, ใช้พลังงานต่ำกว่า และใช้พื้นที่น้อยกว่าด้วย
ตัวเซิร์ฟเวอร์จะถูกติดตั้งลงในเคสที่เรียกว่า "Blade" หรือ "Chassis" ซึ่งรองรับการติดตั้งเซิร์ฟเวอร์ได้หลายตัวภายในเคสเดียว นอกจากนี้ ตัวเคสยังมีคุณสมบัติการทำงานหลากหลาย ไม่ว่าจะเป็นระบบทำความเย็น, ฮาร์ดแวร์เครือข่าย แถมตัวเคสยังสามารถทำตัวเหมือน Rack ได้อีกด้วย สรุปง่าย ๆ ว่า Blade Server ทำให้เซิร์ฟเวอร์มีขนาดเล็กลง แต่ประสิทธิภาพสูงขึ้น แต่ยังคงใช้พื้นที่เท่าเดิม
Blade Server
ภาพจาก : https://en.wikipedia.org/wiki/Blade_server
หลังจากที่ Blade Server ถูกคิดค้นขึ้นมา เป้าหมายในการพัฒนาก็เปลี่ยนแปลงจากการสร้างฮาร์ดแวร์ใหม่ ๆ ไปเป็นการสร้างระบบบริหารจัดการประสิทธิผล และประสิทธิภาพแทน ตัวอย่างเช่น ระบบเซิร์ฟเวอร์แบบ คลัสเตอร์ (Cluster) เพื่อให้เป็น คลัสเตอร์คอมพิวติ้ง (Cluster Computing) ที่ช่วยขยายขีดจำกัดของเซิร์ฟเวอร์ให้รองรับผู้ใช้งานได้มากขึ้น และช่วยแก้ปัญหาหากมีเซิร์ฟเวอร์ตัวใดตัวหนึ่งล่มไป ระบบก็ยังคงอาศัยเซิร์ฟเวอร์เครื่องอื่นทำงานต่อได้
ระบบ Remote Management หรือ Lights-out management (LOM) ก็มาในช่วงนี้เช่นกัน มันช่วยให้ทีมที่ดูแลเซิร์ฟเวอร์สามารถดูแล, สั่งการ และปรับแต่งเซิร์ฟเวอร์ผ่านอินเทอร์เน็ตได้ โดยไม่จำเป็นต้องเดินทางเข้าไปที่ Data Center ทุกครั้งเหมือนในอดีต นอกจากนี้ มันยังช่วยลดจำนวนพนักงาน และลดขนาดของห้องจัดการเซิร์ฟเวอร์ (Server Room Management) อีกด้วย
ในปี ค.ศ. 2013 (พ.ศ. 2556) ศูนย์วิจัย HP Labs ได้พัฒนา Moonshot ขึ้นมา มันถือเป็นระบบเซิร์ฟเวอร์ที่กำหนดทำงานด้วยซอฟต์แวร์เป็นตัวแรกของโลก หากเปรียบเทียบกับเซิร์ฟเวอร์แบบดั้งเดิม Moonshot เป็นเซิร์ฟเวอร์ที่สามารถใช้ไมโครโปรเซสเซอร์พลังงานต่ำในการทำงานได้ ประหยัดไฟ และใช้พื้นที่ติดตั้งน้อย มันถูกออกแบบมารับภาระงานบางอย่างของตัว Data Center เช่น จัดการกับงานที่ต้องการข้อมูลจำนวนมาก หรือการประมวลผลบนคลาวด์ (Cloud Computing)
ในช่วงเวลานี้ เทรนด์ การจำลองเซิร์ฟเวอร์ (Virtualization) เริ่มได้รับความนิยมสูงขึ้น Virtual Server หรือ Cloud Server ที่มีความสามารถเหมือนเซิร์ฟเวอร์ที่เป็นฮาร์ดแวร์ของจริง แต่สร้างขึ้นจากการใช้ ซอฟต์แวร์จำลอง Virtual Machine แบ่งทรัพยากรที่มีอยู่บนเซิร์ฟเวอร์ที่มีอยู่จริง มาสร้างเป็นเซิร์ฟเวอร์เสมือนหลาย ๆ เซิร์ฟเวอร์ ซึ่งเหมาะสำหรับงานที่มีรูปแบบการทำงานเปลี่ยนแปลงตลอดเวลา มีความแปรปรวนสูง หรือมีการลด-ขยายสเกลการทำงานเป็นประจำ
ในปัจจุบันนี้ Data Center ก็ยังคงมีการสร้างเพิ่มขึ้นตลอดเวลา เพื่อรองรับข้อมูลดิจิทัลที่ขยายขนาดใหญ่โตขึ้นตลอดเวลา ไหนจะการมาของเทคโนโลยี AI ที่ตอนนี้กำลังมาแรง ทำให้ความต้องการของเซิร์ฟเวอร์เพิ่มสูงขึ้นตามอัตราการแข่งขัน
ซึ่ง Data Center ที่เป็นบ้านของเซิร์ฟเวอร์ เป็นสิ่งที่ต้องการพลังงานในการทำงานสูงมาก ซึ่งนำมาซึ่งผลกระทบต่อสิ่งแวดล้อมปัญหาโลกร้อน การลดอัตราการปล่อยก๊าซเรือนกระจกเพื่อสร้าง เครดิตคาร์บอน (Carbon Credit) ส่งผลให้ในตอนนี้ เมื่อคิดจะสร้าง Data Center ก็จะพยายามทำทุกวิถีทางเพื่อลดผลกระทบต่อสิ่งแวดล้อม ไม่ว่าจะเป็นการใช้พลังงานสะอาดในการทำงาน, นำขยะอิเล็กทรอนิกส์มารีไซเคิลในการก่อสร้าง, พัฒนาเทคโนโลยีที่ช่วยประหยัดพลังงานในการทำงานของ Data Center หรือแม้แต่การนำพลังงานความร้อนที่เกิดขึ้นจาก Data Center ไปใช้ทำระบบน้ำอุ่นในเมืองที่อยู่ในเขตหนาว
|
แอดมินสายเปื่อย ชอบลองอะไรใหม่ไปเรื่อยๆ รักแมว และเสียงเพลงเป็นพิเศษ |