การซื้อบัญชี AWS: ใช้การกำหนดเส้นทางล่าช้าของ Amazon Route 53และการกำหนดเส้นทางความผิดพลาดเพื่อเพิ่มประสิทธิภาพการเข้าถึงของผู้ใช้ทั่วโลก

เมฆ 2026-05-29 阅读 10
1

เพื่อนทางเทคนิคที่ทำธุรกิจข้ามชาติอีคอมเมิร์ซข้ามพรมแดนหรือไซต์อิสระในต่างประเทศจะต้องเผชิญกับปัญหาที่น่าปวดหัวอย่างยิ่ง:

ประสบการณ์การเยี่ยมชมของผู้ใช้ทั่วโลกแตกต่างกันมาก

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

ในระบบนิเวศของ AWS (Amazon Cloud Technology) ผู้บัญชาการที่ดีที่สุดในการแก้ปัญหาการระบายน้ำทั่วโลกและการเพิ่มประสิทธิภาพเครือข่ายเรียกว่า

Amazon Route 53

วันนี้เราไม่ได้พูดถึงทฤษฎีทางการที่ว่างเปล่าและปฏิเสธที่จะพูดเราเริ่มต้นโดยตรงจากการต่อสู้จริงและสอนวิธีรวมและใช้สองกลยุทธ์หลักของ Route 53-

เส้นทางล่าช้า (Latency Routing) และ Failover (เรียกอีกอย่างว่าเส้นทางการถ่ายโอนล้มเหลว)

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

ขั้นตอนแรก: การกำหนดเส้นทางล่าช้า (Latency Routing)-ให้เครือข่ายเลือกเส้นทางที่เหมาะสมที่สุด

หลายคนมีความเข้าใจผิดว่าควรใช้ "Geolocation Routing" เพื่อเบี่ยงเบนความสนใจของผู้ใช้ทั่วโลกตัวอย่างเช่นผู้ใช้ชาวจีนไปที่เซิร์ฟเวอร์ฮ่องกงและผู้ใช้ชาวอเมริกันไปที่เซิร์ฟเวอร์โอเรกอน

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

ตรรกะพื้นฐานของการกำหนดเส้นทางล่าช้านั้นฉลาดมาก

โหนดขอบของ AWS ทั่วโลกจะวัดความล่าช้าของเครือข่ายจริง (Latency) ของส่วน IP ที่แตกต่างกันไปยังภูมิภาค AWS ต่างๆ (ภูมิภาค) เป็นประจำ

เมื่อผู้ใช้ชาวญี่ปุ่นเยี่ยมชมเว็บไซต์ของคุณ Route 53จะตรวจสอบตลาดอินเทอร์เน็ตในปัจจุบันและพบว่าความล่าช้าของ Tokyo Region คือ20ms และแม้แต่ U.S. Region คือ150ms ดังนั้น Route 53จะชี้การแก้ปัญหาชื่อโดเมนไปยังเซิร์ฟเวอร์โตเกียวในไม่กี่วินาทีวิธีการระบายน้ำแบบ "พูดด้วยความเร็วอินเทอร์เน็ตจริง" นี้เป็นการเบี่ยงเบนที่ชาญฉลาดอย่างแท้จริง

การต่อสู้จริง: กำหนดค่าเครือข่ายการเปลี่ยนเวลาแฝงทั่วโลก

เราถือว่า: ธุรกิจของคุณในโตเกียว (ap-northeast-1)

และ

เวอร์จิเนีย (เรา-1) ใช้ชุดเว็บเซิร์ฟเวอร์เดียวกัน

ลงชื่อเข้าใช้คอนโซล AWS ค้นหาและเข้าสู่ Route 53。

คลิกเข้าสู่ "โฮสต์โซน" ของคุณแล้วคลิก "สร้างบันทึก"

สร้างบันทึกแรก (ชี้ไปที่โตเกียว): ชื่อบันทึก: เช่น api.yourdomain.com กลยุทธ์การกำหนดเส้นทาง: เลือกเมนูแบบเลื่อนลงโดยไม่ลังเล

เลือก "Latency" ภูมิภาค: เลือก ap-northeast-1 (โตเกียว) เป้าหมายการกำหนดเส้นทางมูลค่า/การรับส่งข้อมูล: กรอก IP สาธารณะของเซิร์ฟเวอร์โตเกียวของคุณ (หรือชื่อโดเมนของ Tokyo ALB Load Equalizer) ID บันทึก: ตั้งชื่อที่เข้าใจได้เช่น Tokyo-Server

สร้างระเบียนที่สอง (ชี้ไปที่สหรัฐอเมริกา): ชื่อของบันทึกยังคงเหมือนเดิมและยังคงเป็น api.yourdomain.com กลยุทธ์การกำหนดเส้นทางยังเลือก "Latency" ภูมิภาค: คราวนี้ฉันเลือก us-1 (เวอร์จิเนีย) เป้าหมายการกำหนดเส้นทางมูลค่า/การรับส่งข้อมูล: กรอกชื่อโดเมน IP หรือ ALB ของเซิร์ฟเวอร์สหรัฐอเมริกา ID บันทึก: ชื่อ US-Server

คลิกบันทึกในเวลานี้เครือข่ายหน่วงเวลาอัจฉริยะทั่วโลกถูกเชื่อมจนตายผู้ใช้ชาวเอเชียได้รับ IP ของโตเกียวเมื่อพวกเขาเยี่ยมชมและผู้ใช้ชาวอเมริกันได้รับ IP ของอเมริกาเมื่อพวกเขาเยี่ยมชมทั้งสองฝ่ายใช้ทางหลวงของตัวเองโดยไม่รบกวนซึ่งกันและกัน

ขั้นตอนที่สอง: Failover Routing-การประกันภัยสองเท่าสำหรับการจราจรทั่วโลก

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

เพื่อป้องกันภัยพิบัติระดับภูมิภาคนี้เราต้องกำหนดระดับบนพื้นฐานของการกำหนดเส้นทางที่ล่าช้า

เส้นทาง Failover (Failover)

ตรรกะของการกำหนดเส้นทางความผิดพลาดคือ

"ระบบกำจัดหลักและสำรอง"

(Active-Passive) มันจ้องไปที่เซิร์ฟเวอร์ของคุณผ่านการตรวจสุขภาพ (Health Check) ตราบใดที่เซิร์ฟเวอร์หลักเปิดเป็นสีแดงระบบจะตัดการรับส่งข้อมูลทันทีและตัดทั้งหมดไปยังเซิร์ฟเวอร์สำรอง

ปัญหาหลัก: จะรวมการกำหนดเส้นทางล่าช้าและการกำหนดเส้นทางเอกซ์เรย์ได้อย่างไร?

หากคุณจัดสรรโดยตรงบนคอนโซลคุณจะพบว่าบันทึกสามารถเลือกกลยุทธ์การกำหนดเส้นทางได้เพียงกลยุทธ์เดียวและไม่มีวิธีใดที่จะเลือกทั้ง "หน่วงเวลา" และ "ความผิด"

โซลูชันมาตรฐานของ Dachang คือ:

ใช้ "Traffic Flow" ของ Route 53เพื่อสร้างภาพผ้าใบหรือใช้วิธี "บันทึกซ้อนหลายชั้น"

。ที่นี่ฉันจะสอนวิธีที่เข้าใจง่ายที่สุดและไม่ใช้เงินผิด

วิธีการบันทึกซ้อนกัน

ขั้นตอนที่1: สร้างการตรวจสุขภาพสำหรับสองภูมิภาค

ในเมนูด้านซ้ายของ Route 53คลิก "Health Checks"-> "สร้างการตรวจสุขภาพ"

สร้าง Tokyo-Health เพื่อจ้องไปที่พอร์ตของเซิร์ฟเวอร์โตเกียว (เช่น80หรือ443) สร้าง US-Health อีกอันเพื่อจ้องไปที่เซิร์ฟเวอร์ของสหรัฐอเมริกาตั้งค่าการตรวจจับทุกๆ10วินาที

ขั้นตอนที่2: ประกอบลอจิกซ้อนขั้นสูง

เราต้องการสร้างตรรกะ:

"เราเตอร์ล่าช้า" ขั้นสูงสำหรับผู้ใช้ทั่วโลก

"เราเตอร์ล่าช้า" นำชาวเอเชียไปที่ "Tokyo Fault Checkpoint"

การตรวจสอบ "Tokyo Fault Checkpoint" พบว่าเซิร์ฟเวอร์ของโตเกียวยังมีชีวิตอยู่และได้รับการปล่อยตัวหากโตเกียวตายมันจะเปลี่ยนผู้คนไปยังดิสก์สำรองของสหรัฐอเมริกา (Secondary) โดยอัตโนมัติ

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

วิธีที่ง่ายและทันสมัยคือการใช้ Route 53โดยตรง

"นโยบายการจราจร"

อินเทอร์เฟซแบบกราฟิก:

คลิก "กลยุทธ์การเข้าชม"-> "สร้างกลยุทธ์การเข้าชม"

กฎชั้นแรก: เพิ่มกฎความล่าช้า (กฎ Latency)

ภายใต้สาขาความล่าช้าของโตเกียวอย่ากรอก IP โดยตรงแต่คลิกเพื่อเพิ่มกฎ Failover: หลัก: กรอกเซิร์ฟเวอร์โตเกียวและผูก Tokyo-Health รอง (Secondary): กรอกข้อมูลลงในเซิร์ฟเวอร์ของสหรัฐอเมริกา

ภายใต้สาขาความล่าช้าของสหรัฐอเมริกาจะมีการเพิ่มกฎ Failover: Primary: กรอกข้อมูลในเซิร์ฟเวอร์ของสหรัฐอเมริกาและผูก US-Health Secondary: กรอกข้อมูลลงในเซิร์ฟเวอร์โตเกียว

สถาปัตยกรรมที่ยอดเยี่ยมนี้อยู่ที่ไหน? โดยปกติทุกคนจะไปตามความล่าช้าเมื่อ Tokyo Region ล่มสลายกฎ Failover ของสาขาโตเกียวจะถูกเรียกใช้ทันทีโดยเปลี่ยนผู้ใช้ชาวเอเชียที่เดิมไปโตเกียวและบังคับให้เปลี่ยนเครื่องในสหรัฐอเมริกา

แม้ว่าความล่าช้าในการไปเยือนสหรัฐอเมริกาของผู้ใช้ชาวเอเชียจะเพิ่มขึ้นเล็กน้อยเนื่องจากเครื่องอเมริกันยังมีชีวิตอยู่แต่ธุรกิจของคุณจะยังคงอยู่และจะไม่เป็นอัมพาตในพื้นที่ขนาดใหญ่

ขั้นตอนที่สาม: การตรวจสอบออนไลน์และการฝึกซ้อมในสถานที่จริง

หลังจากจับคู่โครงสร้างตุ๊กตาชุดนี้แล้วอย่าทิ้งมันไปที่นั่นโดยตรงเราต้องตรวจสอบว่ามันใช้งานได้จริงหรือไม่

1.ตรวจสอบความล่าช้าในการแยกอัจฉริยะ

ค้นหาเพื่อนสองสามคนจากภูมิภาคต่างๆหรือใช้เครื่องมือ Ping ระดับโลก (เช่น

Ping .pe

หรือ

Itdog

):

ให้โหนดในญี่ปุ่นหรือฮ่องกงไปที่ g api.yourdomain.com พินเพื่อดูว่า IP ที่ส่งคืนนั้นอยู่ในห้องคอมพิวเตอร์ของโตเกียวหรือไม่

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

2.จำลองการฝึกซ้อมภัยพิบัติ (ไฮไลต์)

เลือกตอนดึกที่มีคนไม่กี่คนมาทดสอบเส้นทางเอกซ์เรย์:

ลงชื่อเข้าใช้เซิร์ฟเวอร์โตเกียวหยุดบริการ Nginx หรือ Apache ด้วยตนเองหรือบล็อกพอร์ต80/443ในกลุ่มความปลอดภัยโดยตรงและเรียกใช้การตรวจสุขภาพล้มเหลว

จับตาดูคอนโซลการตรวจสุขภาพของ Route 53ประมาณ30วินาทีถึง1นาที Toky

แสงสีเขียวของ o-Health จะเปลี่ยนเป็นแสงสีแดง

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

หลังจากการฝึกซ้อมสิ้นสุดลงบริการในโตเกียวจะเริ่มต้นใหม่ทันทีหลังจากตรวจพบ Route 53ที่ฟื้นคืนชีพระบบจะรับการจราจรในเอเชียโดยอัตโนมัติและกระบวนการทั้งหมดจะราบรื่น

ขั้นตอนที่สี่: ต้นทุนและประวัติการหลีกเลี่ยงเลือดและน้ำตาภายใต้สถาปัตยกรรมโลก

ทางเลือกของ TTL (เวลาอยู่รอด): ความละเอียด DNS ถูกแคชเมื่อสร้างบันทึกการกำหนดเส้นทางขั้นสูงเหล่านี้ TTL จะต้องไม่ใหญ่เกินไป (ค่าเริ่มต้น300วินาทีหรือหลายชั่วโมงจะใช้ไม่ได้อย่างแน่นอน) แนะนำให้ตั้งค่า TTL มาตรฐานสำหรับการผันอัจฉริยะระดับองค์กรเป็น60วินาทีหากการตั้งค่ามีขนาดใหญ่เกินไปหลังจากเซิร์ฟเวอร์โตเกียวถูกวางสายแม้ว่าพื้นหลัง Route 53จะถูกตัดไปยังสหรัฐอเมริกาเบราว์เซอร์ของผู้ใช้ยังคงแคชที่อยู่เก่าและเวลาในการกู้คืนความล้มเหลว (RTO) จะขยายออกไปเรื่อยๆ

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

ลูกคิดการเรียกเก็บเงิน: ค่าธรรมเนียมการวิเคราะห์พื้นฐานของ Route 53นั้นถูกมาก ($0.5ต่อเดือนสำหรับพื้นที่ดูแล) แต่กลยุทธ์การจราจรขั้นสูงและการวิเคราะห์ปริมาณที่เชื่อมโยงกับการตรวจสุขภาพจะคำนวณแยกกันอย่างไรก็ตามเมื่อเทียบกับความสูญเสียจำนวนมากที่เกิดจากการระงับธุรกิจทั่วโลกและการสูญเสียลูกค้าเนื่องจากการตัดการเชื่อมต่อของห้องคอมพิวเตอร์ค่าธรรมเนียมการกำหนดเส้นทางนี้แทบจะไม่สำคัญเลย

สรุป

การใช้ Amazon Route 53เพื่อเล่นกับการเข้าชมทั่วโลกหัวใจหลักอยู่ที่"

ใช้การกำหนดเส้นทางที่ล่าช้าเพื่อไล่ตามความเร็วสูงสุดใช้การกำหนดเส้นทางที่ผิดพลาดเพื่อรักษาบรรทัดล่างที่มีความพร้อมสูง

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

1
← 返回新闻中心