มีการใช้กรณีที่ให้ยืมตัวเองดีกว่า Amazon Cloudfront มากกว่า s3 หรือวิธีอื่น ๆ หรือไม่? ฉันพยายามเข้าใจความแตกต่างระหว่าง 2 ถึงตัวอย่าง
มีการใช้กรณีที่ให้ยืมตัวเองดีกว่า Amazon Cloudfront มากกว่า s3 หรือวิธีอื่น ๆ หรือไม่? ฉันพยายามเข้าใจความแตกต่างระหว่าง 2 ถึงตัวอย่าง
คำตอบ:
Amazon S3ได้รับการออกแบบสำหรับการจัดเก็บไฟล์ความจุสูงและราคาประหยัดในภูมิภาคเดียวโดยเฉพาะ * ค่าใช้จ่ายในการจัดเก็บและแบนด์วิดท์ค่อนข้างต่ำ
Amazon CloudFrontเป็นเครือข่ายการจัดส่งเนื้อหา (CDN) ซึ่งพร็อกซีและแคชข้อมูลเว็บที่ตำแหน่งขอบใกล้กับผู้ใช้มากที่สุด
เมื่อผู้ใช้ปลายทางร้องขอวัตถุโดยใช้ชื่อโดเมนพวกเขาจะถูกส่งไปยังตำแหน่งขอบที่ใกล้ที่สุดโดยอัตโนมัติเพื่อการส่งเนื้อหาที่มีประสิทธิภาพสูง ( Amazon )
ข้อมูลที่ให้บริการโดย CloudFront อาจหรืออาจมาจาก S3 เนื่องจากมันเหมาะสำหรับความเร็วในการจัดส่งมากขึ้นแบนด์วิดท์จึงมีค่าใช้จ่ายเพิ่มขึ้นเล็กน้อย
หากฐานผู้ใช้ของคุณเป็นภาษาท้องถิ่นคุณจะไม่เห็นความแตกต่างในการทำงานกับ S3 หรือ CloudFront มากเกินไป (แต่คุณต้องเลือกตำแหน่งที่เหมาะสมสำหรับที่เก็บข้อมูล S3 ของคุณ: US, EU, APAC) หากฐานผู้ใช้ของคุณกระจายไปทั่วโลกและความเร็วเป็นสิ่งสำคัญ CloudFront อาจเป็นตัวเลือกที่ดีกว่า
ทั้งสอง S3 และ CloudFront ช่วยให้ชื่อแทนโดเมน แต่ CloudFront ช่วยนามแฝงหลายเพื่อให้d1.mystatics.com
, d2.mystatics.com
และd3.mystatics.com
สามารถชี้ไปที่สถานที่เดียวกันการเพิ่มความสามารถในการดาวน์โหลดแบบขนาน (ใช้ไปนี้จะได้รับการแนะนำโดยGoogleแต่ด้วยการแนะนำของ SPDY และ HTTP / 2 เป็นของ ความสำคัญน้อยกว่า)
CloudFront ยังรองรับ CORSตั้งแต่ปี 2014 (ขอบคุณ sergiopantoja)
* หมายเหตุ: S3 สามารถทำซ้ำไปยังภูมิภาคเพิ่มเติมโดยอัตโนมัติในปี 2558
CloudFront และ S3 ถังจะไม่เหมือนกัน ในแง่ของคนธรรมดา: CloudFront ช่วยให้คุณสามารถเร่งการส่งเนื้อหาของเนื้อหาเว็บของคุณผ่านเครือข่ายการจัดส่งเนื้อหา (CDN) ในสถานที่ขอบในขณะที่ S3 Buckets เป็นที่ที่คุณจัดเก็บไฟล์จริงของคุณ แหล่งที่มาของ CloudFront อาจไม่ได้มาจาก S3 แต่เพื่อให้มองเห็นการรวม S3 ได้ง่ายขึ้นด้วย CloudFront:
ความแตกต่างที่สำคัญอีกประการหนึ่งคือ CloudFront ช่วยให้คุณสามารถสะท้อนไซต์บนเซิร์ฟเวอร์ของคุณ Cloudfront จะแคชไฟล์เช่นรูปภาพ mp3 หรือวิดีโอโดยใช้เครือข่ายการจัดส่งเนื้อหา
สิ่งนี้จะช่วยให้คุณไม่ต้องทำซ้ำสินทรัพย์ของคุณเช่นเดียวกับเมื่อคุณใช้ Amazon S3
อย่างไรก็ตามหลังจากไฟล์หมดอายุ CloudFront จะดึงข้อมูลอีกครั้งจากเว็บไซต์ที่ใช้งานของคุณ (มีค่าใช้จ่าย) ดังนั้นส่วนของคลาวด์จึงเหมาะสำหรับไฟล์ที่เข้าถึงบ่อยและน้อยกว่าสำหรับไฟล์ที่เข้าถึงไม่บ่อย
วิธีหนึ่งในการตั้งค่าการหมดอายุของไฟล์สำหรับ apache อยู่ใน. htaccess ตัวอย่างเช่น
<filesMatch "\\.(mp3|mp4)$">
Header set Cache-Control "max-age=648000, private"
</filesMatch>
Amazon CLOUDFRONT และ S3 เป็นบริการที่แตกต่างกันสองบริการโดย Amazon Web Services
Amazon S3เป็นบริการจัดเก็บข้อมูลที่เราสามารถจัดเก็บไฟล์คงที่เช่น:
css, รูปภาพ, javascripts, วิดีโอ, ฯลฯ ...
Amazon CloudFrontเป็นเครื่องมือระดับกลางซึ่งอยู่ระหว่างผู้ใช้ที่ร้องขอไฟล์จาก AWS และศูนย์ข้อมูล S3 ในภูมิภาคเฉพาะ CloudFront ใช้เพื่อเร่งการกระจายเนื้อหาเว็บแบบคงที่และไดนามิกของคุณจาก S3 ถึงผู้ใช้
คุณสามารถเข้าใจได้ดีขึ้นจากตัวอย่าง: -
ตัวอย่างเช่น S3 ของคุณตั้งอยู่ในภูมิภาค AWS US East (N. Virginia) ซึ่งเป็นที่ตั้งศูนย์ข้อมูลเพื่อเก็บไฟล์ของคุณ
หากผู้ใช้จากอินเดียพยายามเข้าถึงไฟล์จากเซิร์ฟเวอร์ AWS ในเวอร์จิเนียผู้ใช้จะต้องไปที่สถานที่นั้นพร้อมคำขอและต้องใช้เวลานาน
สิ่งที่ CloudFront ทำก็คือมันเป็นตัวกลางระหว่างผู้ใช้กับ AWS S3
ไฟล์ที่ใช้บ่อยที่สุดสามารถแคชบน CloudFront และสิ่งที่มันทำคือมันทำซ้ำไฟล์เหล่านั้นในตำแหน่งขอบ (เพื่อส่งเนื้อหาไปยังผู้ใช้ปลายทางด้วยเวลาแฝงที่ต่ำกว่า Amazon CloudFront ใช้เครือข่ายทั่วโลกของตำแหน่งขอบสำหรับการส่งเนื้อหา)
หากเนื้อหาอยู่ในตำแหน่งขอบที่มีเวลาแฝงต่ำที่สุด CloudFront จะส่งเนื้อหาทันที หากเนื้อหาไม่อยู่ในตำแหน่งขอบนั้นในขณะนี้ CloudFront จะดึงข้อมูลจากที่ฝากข้อมูล Amazon S3 และมอบให้กับผู้ใช้เร็วที่สุดเท่าที่จะทำได้
ทุกคำขอจะได้รับ DNS ใหม่จาก CloudFront ถึง S3 ดังนั้นสิ่งนี้จะส่งผลให้ปริมาณการใช้งานลดลงรวมถึงการประมวลผลคำขอแบบขนานมากขึ้น
ต่อไปนี้เป็นรายการของที่ตั้งขอบปัจจุบันตามกรกฎาคม -2016: -
สหรัฐ
ยุโรป
อัมสเตอร์ดัม, เนเธอร์แลนด์ (2)
ดับลินไอร์แลนด์
แฟรงค์เฟิร์ต, เยอรมนี (3)
ลอนดอน, อังกฤษ (3)
มาดริด, สเปน
มาร์เซย์, ฝรั่งเศส
มิลาน, อิตาลี
ปารีส, ฝรั่งเศส (2)
สตอกโฮล์มสวีเดน
วอร์ซอว์, โปแลนด์
เอเชีย
เจนไนอินเดีย
ฮ่องกง (2)
มุมไบประเทศอินเดีย
มะนิลาประเทศฟิลิปปินส์
นิวเดลีอินเดีย
โอซาก้าประเทศญี่ปุ่น
โซล, เกาหลี (3)
สิงคโปร์ (2)
ไทเปไต้หวัน
โตเกียวญี่ปุ่น (2)
ออสเตรเลีย
เมลเบิร์นออสเตรเลีย
ซิดนีย์ออสเตรเลีย
อเมริกาใต้
เซาเปาโล, บราซิล
ริโอเดอจาเนโรประเทศบราซิล
จากนี้คุณสามารถสรุปได้ว่าหากผู้ใช้ถูก จำกัด มาจากภูมิภาคเดียวกับ S3 ที่โฮสต์อยู่คุณไม่จำเป็นต้องไปที่ CloudFront และถ้าจำนวนผู้ใช้เพิ่มขึ้นในระดับโลกคุณควรใช้ CloudFront อย่างแน่นอน เพื่อความหน่วงและการควบคุมการจราจรที่ดีขึ้น
อีกกรณีสำหรับการใช้ CloudFront เหนือ S3 คือคุณสามารถใช้ใบรับรอง SSL ไปยังโดเมนที่กำหนดเองใน CloudFront ในขณะที่คุณไม่สามารถใช้ S3 เหตุผลที่ดีพอสมควร!
Amazon S3 เป็น Simple Storage Service ซึ่งสามารถใช้ข้อมูลจำนวนมากเช่นวิดีโอ, รูปภาพ, PDF และอื่น ๆ
CloudFront เป็นเครือข่ายการจัดส่งเนื้อหาซึ่งอยู่ใกล้กับผู้ใช้ปลายทางและใช้เพื่อทำให้ข้อมูลมีอยู่ใน Amazon S3 ในเวลาที่น้อยที่สุด
กรณีใช้งานตัวอย่างคือ Video on Demand
ข้อดีของการใช้ CloudFront สำหรับกรณีการใช้งานที่ถูกต้อง:
กรณีการใช้ที่เป็นไปได้อื่น ๆ :
สิ่งหนึ่งที่พลาดนี่คือ:
Amazon Cloudfront ยังเสนอราคาที่ต่ำกว่า Amazon S3 ที่ระดับการใช้งานที่สูงขึ้น
Cloudfront CDN ใช้สำหรับการกระจายเนื้อหาข้ามเซิร์ฟเวอร์หลายเครื่องกระจายตามพื้นที่ภูมิศาสตร์ (CSS, JS)
ในขณะที่ s3 เป็นมากกว่าแหล่งเก็บทรัพยากรที่ใช้น้อยกว่าต่อผู้ใช้ (ภาพผู้ใช้, PDF)
คุณสามารถให้บริการทรัพยากร Cloudfront ของคุณจากที่เก็บข้อมูล s3 อย่างสมบูรณ์ผ่านทางเว็บเซิร์ฟเวอร์ของคุณ
( มีประโยชน์ในสถานการณ์ที่เว็บเซิร์ฟเวอร์ของคุณรวบรวมและจัดเก็บรูปภาพและจาวาสคริปต์ไว้ล่วงหน้าเก็บไว้ใน s3 หมายถึงลดจำนวนหน่วยความจำเซิร์ฟเวอร์ของคุณ )
ตัวอย่างบน Heroku Slugs (สามารถลดขนาดแอปพลิเคชันที่เป็นไปตามการใช้ s3 และการห่อด้วย CDN ที่ด้านหน้าของคลาวด์จะช่วยเพิ่มปริมาณงาน)
ก่อนอื่นผมขออธิบายว่า Amazon S3 เป็น Cloud Storage และ Cloud Front เป็นเครือข่ายการส่งเนื้อหา (CDN)
ดังนั้นคุณสามารถใช้เพื่อจัดเก็บไฟล์บน S3 และสามารถสร้างการกระจายเพื่อให้บริการเนื้อหาผ่านอินเทอร์เน็ต เช่นเดียวกับคุณสามารถสร้างการกระจายสำหรับภูมิภาคเฉพาะ
คุณสามารถดูการเปรียบเทียบระหว่าง Amazon S3 และ Amazon Cloudfront ได้จากที่นี่: http://www.bucketexplorer.com/documentation/cloudfront--amazon-s3-vs-amazon-cloudfront.html
[การเปิดเผย: Bucket Explorer]
Amazon S3 เป็นแพลตฟอร์มการจัดเก็บวัตถุที่ยอดเยี่ยมหากคุณกำลังมองหาระบบจัดเก็บข้อมูลแบบกระจายทั่วโลกเพื่อป้องกันภูมิภาค / โซนที่กำลังจะล่ม นอกจากนี้ยังเหมาะสำหรับเนื้อหาแบบสแตติก / คงที่ที่ไม่ได้ทำธุรกรรมและการเปลี่ยนแปลงเช่นรูปภาพวิดีโอภาพสำรองข้อมูล ฯลฯ หวังว่าจะช่วยได้!