ใน IIS7 มีหลายสิ่งที่คุณสามารถทำได้เพื่อเริ่มเว็บไซต์ใหม่ ฉันไม่ชัดเจนว่าพวกเขาเกี่ยวข้องกันอย่างไร
- เรียกใช้ iisreset จากบรรทัดคำสั่ง
- รีเฟรชเว็บไซต์
- รีไซเคิลแอพพูล
- รีสตาร์ทเว็บไซต์
ใครสามารถอธิบายสิ่งที่แต่ละคนได้โปรด
ใน IIS7 มีหลายสิ่งที่คุณสามารถทำได้เพื่อเริ่มเว็บไซต์ใหม่ ฉันไม่ชัดเจนว่าพวกเขาเกี่ยวข้องกันอย่างไร
ใครสามารถอธิบายสิ่งที่แต่ละคนได้โปรด
คำตอบ:
iisresetจะหยุดและเริ่มให้บริการการประกาศบนเวิลด์ไวด์เว็บ แน่นอนว่าสิ่งนี้มีผลกับพูลแอปพลิเคชันทั้งหมดของคุณ ฉันแน่ใจว่าคุณสังเกตเห็นกระบวนการที่สร้างขึ้นสำหรับแต่ละกลุ่มแอปพลิเคชัน กระบวนการนี้จะจัดการคำขอสำหรับเว็บไซต์ทั้งหมดที่เกี่ยวข้อง เมื่อคุณรีไซเคิลพูลโปรแกรมประยุกต์ IIS จะสร้างกระบวนการใหม่ (เก็บไว้เดิม) เพื่อให้บริการตามคำขอ จากนั้นจะพยายามย้ายคำขอทั้งหมดในกระบวนการใหม่ หลังจากหมดเวลากระบวนการเก่าจะถูกฆ่าโดยอัตโนมัติ โดยปกติคุณรีไซเคิลแอปพลิเคชันของคุณเพื่อกำจัดหน่วยความจำรั่ว (คุณอาจมีปัญหาในแอปพลิเคชันของคุณหากจำเป็นต้องดำเนินการตามปกติแม้ว่าจะแนะนำให้มีการรีไซเคิลตามกำหนดเวลา) สำหรับการรีสตาร์ทเว็บไซต์มันจะหยุดและเริ่มการให้บริการคำขอสำหรับเว็บไซต์นั้น ๆ มันจะยังคงให้บริการเว็บไซต์อื่น ๆ ในกลุ่มแอพเดียวกันโดยไม่มีการหยุดชะงัก
หากคุณมีแอปพลิเคชันที่มุ่งเน้นการใช้งานทั้งหมดที่กล่าวมาจะทำให้วัตถุเซสชันสูญหาย
การรีเฟรชเว็บไซต์ไม่มีผลกับบริการ / กระบวนการ / เว็บไซต์และเป็นเพียงคำสั่ง UI ในการรีเฟรชทรีวิว (อาจเพิ่มไดเรกทอรีที่คุณไม่เห็นในคอนโซลการจัดการ)
หากต้องการตอบคำถามอีกสองข้อของคุณ:
iisreset หยุดและเริ่มเว็บเซิร์ฟเวอร์ทั้งหมด นั่นคือทุกอย่าง - ผู้ใช้ทั้งหมดของคุณสูญเสียการเชื่อมต่อขณะที่สิ่งนี้เกิดขึ้น
การรีไซเคิลพูลแอ็พพลิเคชันจะหยุดและเริ่มกระบวนการที่เกี่ยวข้องกับแอปพลิเคชันที่อยู่ในกลุ่มนั้น พูดอย่างเคร่งครัดมันไม่มีส่วนเกี่ยวข้องกับเว็บไซต์ (ยกเว้นเนื้อหาที่ใช้งานจากแอปพลิเคชันเหล่านั้น)
@Vlad Mucescu ให้คำตอบที่ดี แต่มันดูเหมือนส่วนที่เขาอธิบายการรีไซเคิลแอปพลิเคชันที่เขาพูดเกี่ยวกับ Overlapped Recycling การรีไซเคิลมีสองประเภท: การรีไซเคิลกระบวนการและการรีไซเคิลที่ซ้อนทับกัน ( แหล่งที่มาของ MSDN ):
โหมดการแยกกระบวนการของผู้ปฏิบัติงานนำเสนอการรีไซเคิลกระบวนการซึ่ง IIS จะรีเฟรชแอปพลิเคชันเว็บโดยอัตโนมัติโดยเริ่มกระบวนการของผู้ปฏิบัติงานใหม่ กระบวนการรีไซเคิลช่วยให้แอปพลิเคชันที่มีปัญหาทำงานได้อย่างราบรื่นและเป็นโซลูชั่นที่มีประสิทธิภาพโดยเฉพาะอย่างยิ่งในกรณีที่ไม่สามารถแก้ไขรหัสแอปพลิเคชันได้
กระบวนการรีไซเคิลซึ่งตามหลังเหตุการณ์การรีไซเคิลสามารถเกิดขึ้นได้สองวิธี
หากกระบวนการของผู้ปฏิบัติงานที่ให้บริการพูลแอปพลิเคชันในปัจจุบันถูกยกเลิกดังนั้น WWW Service (W3SVC) ซึ่งทำหน้าที่เป็นกระบวนการหลักในกระบวนการของผู้ปฏิบัติงานจะเริ่มกระบวนการใหม่ในสถานที่นั้น
เมื่อกระบวนการของผู้ปฏิบัติงานสิ้นสุดลงกระบวนการใหม่จะเริ่มพร้อมกัน การรีไซเคิลประเภทนี้เรียกว่าการรีไซเคิลซ้ำซ้อน เป็นค่าเริ่มต้นสำหรับแอปพลิเคชันทั้งหมด
ในสถานการณ์จำลองการรีไซเคิลที่ทับซ้อนกันกระบวนการที่กำหนดเป้าหมายสำหรับการรีไซเคิลจะดำเนินการตามคำขอที่เหลือทั้งหมดในขณะที่กระบวนการของผู้ปฏิบัติงานทดแทนจะถูกสร้างขึ้นพร้อมกัน กระบวนการใหม่เริ่มต้นขึ้นก่อนที่กระบวนการของผู้ปฏิบัติงานเก่าจะหยุดและจากนั้นคำร้องขอจะถูกนำไปยังกระบวนการใหม่ การออกแบบนี้ป้องกันความล่าช้าในการให้บริการเนื่องจากกระบวนการเก่ายังคงรับคำขอจนกว่ากระบวนการใหม่จะเริ่มต้นได้สำเร็จและได้รับคำสั่งให้ปิดเฉพาะหลังจากกระบวนการใหม่พร้อมที่จะจัดการคำขอ