เว็บเซิร์ฟเวอร์และเวิร์กโฟลว์

เซิร์ฟเวอร์การทดสอบเซิร์ฟเวอร์การพัฒนาเซิร์ฟเวอร์การจัดคิวและเซิร์ฟเวอร์การผลิต

การทำงานกับไซต์ขนาดใหญ่ที่มีผู้คนจำนวนมากและหน้าเว็บที่ดูแลรักษาอยู่คุณจะพบกับเวิร์กโฟลว์ต่างๆที่ได้รับจากต้นแบบของการออกแบบเว็บไปยังหน้าจริงที่อาศัยอยู่บนอินเทอร์เน็ต เวิร์กโฟลว์สำหรับไซต์ที่ซับซ้อนอาจรวมถึงเว็บเซิร์ฟเวอร์และตำแหน่งเซิร์ฟเวอร์หลายแห่ง และแต่ละเซิร์ฟเวอร์มีจุดประสงค์ที่แตกต่างกัน บทความนี้จะอธิบายบางส่วนของ เซิร์ฟเวอร์ ทั่วไปในเว็บไซต์ที่ซับซ้อนและใช้งานอย่างไร

เว็บเซิร์ฟเวอร์การผลิต

นี่คือเว็บเซิร์ฟเวอร์ประเภทหนึ่งที่นักออกแบบเว็บส่วนใหญ่คุ้นเคย เซิร์ฟเวอร์การผลิตเป็นเว็บเซิร์ฟเวอร์ที่โฮสต์ หน้าเว็บ และเนื้อหาที่พร้อมสำหรับการผลิต กล่าวอีกนัยหนึ่งเนื้อหาบนเว็บเซิร์ฟเวอร์ที่ใช้งานได้แพร่หลายไปยังอินเทอร์เน็ตหรือพร้อมที่จะถูกส่งไปยังอินเทอร์เน็ต

ใน บริษัท ขนาดเล็กเซิร์ฟเวอร์การผลิตคือที่ที่หน้าเว็บทั้งหมดอาศัยอยู่ นักออกแบบและนักพัฒนาทดสอบหน้าเว็บทั้งบนเครื่องท้องถิ่นหรือในพื้นที่ที่มีการป้องกันด้วยรหัสผ่านที่ซ่อนอยู่หรืออยู่ในเซิร์ฟเวอร์ที่ใช้งานอยู่ เมื่อหน้าเว็บพร้อมที่จะใช้งานระบบจะย้ายไปที่ตำแหน่งบนเซิร์ฟเวอร์การผลิตโดยใช้ FTP จากฮาร์ดไดรฟ์ภายในเครื่องหรือย้ายไฟล์จากไดเรกทอรีที่ซ่อนอยู่ไปยังไดเร็กทอรีแบบสด

เวิร์กโฟลว์จะเป็น:

  1. Designer สร้างไซต์บนเครื่องท้องถิ่น
  2. ไซต์ทดสอบออกแบบบนเครื่องท้องถิ่น
  3. ผู้ออกแบบอัปโหลดไซต์ไปยังไดเรกทอรีที่ซ่อนอยู่ในเซิร์ฟเวอร์การผลิตสำหรับการทดสอบเพิ่มเติม
  4. การออกแบบที่ผ่านการอนุมัติจะถูกย้ายไปยังพื้นที่ (ไม่ได้ซ่อน) ของเว็บไซต์

สำหรับไซต์ขนาดเล็กนี่เป็นเวิร์กโฟลว์ที่ยอมรับได้อย่างสมบูรณ์ และในความเป็นจริงคุณมักจะเห็นสิ่งที่ไซต์เล็ก ๆ กำลังทำอยู่โดยการดูที่ไฟล์ที่มีชื่อว่า index2.html และภายในไดเร็กทอรีที่มีชื่อเหมือน / new ตราบเท่าที่คุณจำได้ว่าพื้นที่ที่ไม่ได้รับการป้องกันด้วยรหัสผ่านแบบเดียวกับที่สามารถพบได้โดยเครื่องมือค้นหาโพสต์การอัปเดตไปยังเซิร์ฟเวอร์การผลิตเป็นวิธีที่ดีในการทดสอบการออกแบบใหม่ในสภาพแวดล้อมแบบสดโดยไม่จำเป็นต้องมีเซิร์ฟเวอร์พิเศษ

เซิร์ฟเวอร์ทดสอบหรือเซิร์ฟเวอร์ QA

เซิร์ฟเวอร์ทดสอบเป็นส่วนเสริมที่มีประโยชน์สำหรับเวิร์กโฟลว์ของเว็บไซต์เนื่องจากจะช่วยให้คุณสามารถทดสอบหน้าเว็บและการออกแบบใหม่ ๆ บนเว็บเซิร์ฟเวอร์ที่ไม่สามารถมองเห็นได้สำหรับลูกค้า (และคู่แข่ง) เซิร์ฟเวอร์ทดสอบตั้งขึ้นเพื่อให้เหมือนกันกับเว็บไซต์ที่ใช้งานอยู่และมักมีการควบคุมเวอร์ชันตั้งอยู่เพื่อตรวจสอบให้แน่ใจว่ามีการบันทึกการเปลี่ยนแปลงใด ๆ เซิร์ฟเวอร์ทดสอบส่วนใหญ่ตั้งอยู่หลังไฟร์วอลล์ของ บริษัท เพื่อให้พนักงานสามารถเห็นได้เท่านั้น แต่ก็สามารถตั้งค่า ด้วยการป้องกันด้วยรหัสผ่าน ภายนอกไฟร์วอลล์

เซิร์ฟเวอร์ทดสอบมีประโยชน์มากสำหรับไซต์ที่ใช้เนื้อหาแบบไดนามิกการเขียนโปรแกรมหรือ CGI มาก เนื่องจากถ้าคุณไม่มีเซิร์ฟเวอร์และฐานข้อมูลที่ตั้งอยู่บนเครื่องคอมพิวเตอร์ของคุณการทดสอบหน้าเว็บเหล่านี้แบบออฟไลน์เป็นเรื่องยากมาก ด้วยเซิร์ฟเวอร์ทดสอบคุณสามารถโพสต์การเปลี่ยนแปลงของคุณไปยังไซต์และดูว่าโปรแกรมสคริปต์หรือ ฐานข้อมูล ยังคงใช้ได้ตามที่คุณต้องการหรือไม่

บริษัท ที่มีเซิร์ฟเวอร์ทดสอบมักเพิ่มลงในเวิร์กโฟลว์เช่นนี้

  1. Desginer สร้างเว็บไซต์ภายในเครื่องและทดสอบเฉพาะที่เช่นเดียวกับด้านบน
  2. ผู้ออกแบบหรือนักพัฒนาซอฟต์แวร์อัปโหลดการทดสอบไปยังเซิร์ฟเวอร์ทดสอบเพื่อทดสอบองค์ประกอบแบบไดนามิก (PHP หรือสคริปต์ฝั่งเซิร์ฟเวอร์อื่น ๆ CGI และ Ajax)
  3. การออกแบบที่ผ่านการอนุมัติจะถูกย้ายไปยังเซิร์ฟเวอร์การผลิต

เซิร์ฟเวอร์การพัฒนา

เซิร์ฟเวอร์การพัฒนามีประโยชน์อย่างยิ่งสำหรับไซต์ที่มีคอมโพเนนต์การพัฒนาที่มีขนาดใหญ่เช่นไซต์อีคอมเมิร์ซและแอพพลิเคชันบนเว็บที่ซับซ้อน เซิร์ฟเวอร์การพัฒนาถูกใช้โดยทีมพัฒนาเว็บเพื่อทำงานในการเขียนโปรแกรมด้านหลังของเว็บไซต์ พวกเขามักมีระบบควบคุมเวอร์ชันหรือซอร์สโค้ดสำหรับสมาชิกหลายทีมเพื่อใช้และจัดหาสภาพแวดล้อมเซิร์ฟเวอร์เพื่อทดสอบสคริปต์และโปรแกรมใหม่ ๆ

เซิร์ฟเวอร์การพัฒนาแตกต่างจากเซิร์ฟเวอร์ทดสอบเนื่องจากนักพัฒนาซอฟต์แวร์ส่วนใหญ่ทำงานโดยตรงบนเซิร์ฟเวอร์ เครื่องคิดเลขของเซิร์ฟเวอร์นี้มักจะลองสิ่งใหม่ ๆ ในโปรแกรม แม้ว่าการทดสอบจะเกิดขึ้นบนเซิร์ฟเวอร์สำหรับการพัฒนา แต่ก็เพื่อจุดประสงค์ในการสร้างโค้ดชิ้นงานไม่ใช่การทดสอบกับเกณฑ์เฉพาะ ช่วยให้นักพัฒนาซอฟต์แวร์สามารถกังวลเกี่ยวกับถั่วและสลักเกลียวของเว็บไซต์ได้โดยไม่ต้องกังวลว่าจะทำอย่างไร

เมื่อ บริษัท มีเซิร์ฟเวอร์การพัฒนาทีมงานเหล่านี้มักมีทีมงานที่แยกกันทำงานด้านการออกแบบและพัฒนา เมื่อเป็นเช่นนี้เซิร์ฟเวอร์ทดสอบกลายเป็นสิ่งสำคัญยิ่งขึ้นเนื่องจากเป็นที่ที่การออกแบบพบกับสคริปต์ที่พัฒนาแล้ว เวิร์กโฟลว์ที่มีเซิร์ฟเวอร์การพัฒนามักเป็น:

  1. นักออกแบบทำงานในการออกแบบบนเครื่องท้องถิ่นของตน
    1. ในเวลาเดียวกันนักพัฒนาซอฟต์แวร์จะทำงานกับสคริปต์และโปรแกรมต่างๆบนเซิร์ฟเวอร์การพัฒนา
  2. โค้ดและการออกแบบถูกรวมเข้ากับเซิร์ฟเวอร์ทดสอบสำหรับการทดสอบ
  3. การออกแบบและรหัสที่ได้รับอนุมัติจะถูกย้ายไปยังเซิร์ฟเวอร์การผลิต

Sever เนื้อหา

สำหรับไซต์ที่มีเนื้อหาจำนวนมากอาจมีเซิร์ฟเวอร์อื่นซึ่งมี ระบบการจัดการเนื้อหา อยู่ ซึ่งช่วยให้นักพัฒนาเนื้อหาสามารถเพิ่มเนื้อหาโดยที่ไม่ได้รับผลกระทบจากการออกแบบหรือโปรแกรมที่สร้างไว้ข้างๆ เซิร์ฟเวอร์เนื้อหาเป็นเหมือนเซิร์ฟเวอร์การพัฒนายกเว้นนักเขียนและศิลปินกราฟิก

Staging Server

เซิร์ฟเวอร์การชันสูตรมักเป็นจุดสุดท้ายสำหรับเว็บไซต์ก่อนที่จะมีการผลิต เซิร์ฟเวอร์สเตจถูกออกแบบมาเพื่อให้มีประสิทธิภาพมากที่สุดเท่าที่จะเป็นไปได้ ดังนั้นฮาร์ดแวร์และซอฟต์แวร์มักถูกทำมิเรอร์สำหรับเซิร์ฟเวอร์เว็บที่แสดงและการผลิต หลาย บริษัท ใช้เซิร์ฟเวอร์ทดสอบเป็นเซิร์ฟเวอร์แสดงขั้นเทพ แต่ถ้าไซต์ซับซ้อนมากเซิร์ฟเวอร์ staging จะช่วยให้นักออกแบบและนักพัฒนาซอฟต์แวร์เป็นโอกาสสุดท้ายที่จะตรวจสอบว่าการเปลี่ยนแปลงที่เสนอนั้นได้รับการออกแบบมาและไม่ส่งผลกระทบเชิงลบต่อไซต์โดยรวม, โดยไม่มีการทดสอบอื่นที่กำลังดำเนินการอยู่บนเซิร์ฟเวอร์ทดสอบซึ่งก่อให้เกิดความสับสน

เซิร์ฟเวอร์การจัดคิวมักใช้เป็นรูปแบบของ "ช่วงเวลารอ" สำหรับการเปลี่ยนแปลงเว็บไซต์ ในบาง บริษัท เซิร์ฟเวอร์การแสดงละครจะใช้เนื้อหาใหม่ที่โพสต์โดยอัตโนมัติในขณะที่ บริษัท อื่น ๆ ใช้เซิร์ฟเวอร์เป็นพื้นที่ทดสอบและอนุมัติขั้นสุดท้ายสำหรับผู้ที่อยู่นอกทีมเว็บเช่นการจัดการการตลาดและกลุ่มที่ได้รับผลกระทบ เซิร์ฟเวอร์ staging มักจะใส่ในเวิร์กโฟลว์เช่นนี้:

  1. นักออกแบบทำงานในแบบบนเครื่องท้องถิ่นหรือเซิร์ฟเวอร์ทดสอบ
    1. ผู้สร้างเนื้อหาสร้างเนื้อหาใน CMS
    2. นักพัฒนาซอฟต์แวร์เขียนโค้ด บนเซิร์ฟเวอร์การพัฒนา
  2. การออกแบบและโค้ดถูกนำมารวมกันบนเซิร์ฟเวอร์ทดสอบเพื่อทดสอบ (บางครั้งเนื้อหาจะรวมอยู่ที่นี่ แต่มักจะได้รับการตรวจสอบใน CMS นอกเวิร์กโฟลว์การออกแบบ)
  3. เนื้อหาจะถูกเพิ่มลงในแบบและรหัสบนเซิร์ฟเวอร์การแสดงละคร
  4. ได้รับการอนุมัติขั้นสุดท้ายและไซต์ทั้งหมดถูกส่งไปยังเซิร์ฟเวอร์การผลิต

เวิร์กโฟลว์ของ บริษัท ของคุณอาจแตกต่างกัน

สิ่งหนึ่งที่ฉันได้เรียนรู้ก็คือกระบวนการทำงานที่ บริษัท หนึ่งอาจแตกต่างจากที่ บริษัท อื่น ฉันได้สร้างเว็บไซต์ที่ เขียน HTML ตรงบนเซิร์ฟเวอร์การผลิตโดยใช้ Emacs และ vi และฉันได้สร้างเว็บไซต์ที่ฉันไม่สามารถเข้าถึงอะไร แต่ส่วนเล็ก ๆ ของหน้าฉันทำงานอยู่และฉันได้ทำงานทั้งหมดของฉันภายใน CMS เมื่อเข้าใจวัตถุประสงค์ของเซิร์ฟเวอร์ต่างๆที่คุณอาจเจอคุณสามารถออกแบบและพัฒนางานได้อย่างมีประสิทธิภาพ