ปีที่แล้วในระหว่างการทดสอบผู้ใช้สำหรับแอป BBC News ซึ่งเป็นหนึ่งในผู้ใช้ที่แสดงความคิดเห็นที่ติดอยู่กับฉันจริงๆ พวกเขาประกาศ: "ฉันชอบไหล" ฉันไม่คิดว่าจะมีบทสรุปที่ดีกว่าเกี่ยวกับการแสดงที่ดีต่อผู้ใช้ของเรา ในแอพหรือเว็บไซต์ที่รวดเร็วผู้ใช้สามารถไหลโต้ตอบและมีส่วนร่วมกับเนื้อหา
ประสบการณ์ที่ไหลเป็นสิ่งที่ดีสำหรับเจ้าของไซต์เช่นกัน ประสบการณ์ที่ไหลอย่างรวดเร็วช่วยให้ผู้ใช้บรรลุเป้าหมายและในทางกลับกันเราบรรลุเป้าหมายขององค์กรของเรา อเมซอนและคนอื่น ๆ ได้แสดงให้เห็นถึงการเชื่อมโยงที่แข็งแกร่งระหว่างประสิทธิภาพการทำงานและกิจกรรมของผู้ใช้: ในขณะที่การรอหน้าล้มลงในระยะเวลาและเงินที่ผู้ใช้ใช้เวลาเพิ่มขึ้น
อ่านเพิ่มเติม: รีวิว Nordvpn
แคชถูกสร้างขึ้นเมื่อมีบางอย่างจำนวนเล็กน้อยที่เก็บไว้ใกล้กับที่จำเป็นตามปกติเพื่อป้องกันการทำงานใหม่ ตัวอย่างเช่นถ้าฉันกิน Skittles ฉันมักจะเทลงในมือของฉันแล้วกินจากที่นั่น มีผลบังคับใช้ฉันกำลังสร้างแคชของ skittles ในมือของฉันเพราะมันเร็วกว่าที่จะกินพวกเขาแบบนั้นมากกว่าการกลับไปที่แพ็คเก็ต
รูปแบบเดียวกันนี้ใช้ในเทคโนโลยี มีสามแคชที่เราต้องพิจารณา:
แคชสามารถทำให้การปรับปรุงประสิทธิภาพสูง ที่บีบีซีฉันได้เห็นแคชเพิ่มประสิทธิภาพมากกว่า 20 ครั้งในรหัสการผลิต มันเป็นประโยชน์ต่อผู้ประกอบการไซต์ด้วย ด้วยการแคชผู้ใช้มากขึ้นสามารถรองรับฮาร์ดแวร์เดียวกันได้ สิ่งนี้จะช่วยลดต้นทุนในฮาร์ดแวร์ต่อผู้ใช้ดังนั้นจึงช่วยลดต้นทุนการดำเนินงานของเว็บไซต์
เพื่อให้มีประสิทธิภาพเราต้องการใช้ข้อมูลแคชให้มากที่สุด ในการขยายการเปรียบเทียบแบบ skittles ถ้าฉันต้องการ Scittle สีน้ำเงิน แต่ฉันไม่มีสีน้ำเงิน Skittles ในมือของฉัน (AKA แคชของฉัน) ฉันจะต้องกลับไปที่แพ็คเก็ต สิ่งนี้เรียกว่า 'อัตราการเข้าชม' มันเป็น 'hit' เมื่อรายการอยู่ในแคชและ 'miss' เมื่อมันไม่ได้ เราต้องการอัตราการเข้าชมสูงเพื่อให้แคชใช้เวลาส่วนใหญ่โหลด
หนึ่งในวิธีที่ง่ายที่สุดในการเพิ่มอัตราการเข้าชมคือการลดการเปลี่ยนแปลง การเหยียด Skittles ของฉัน Analogy เล็กน้อยลองนึกภาพว่า Skittles ทั้งหมดเป็นสีแดง ด้วยวิธีนี้ Skittle ในมือของฉันจะเป็นชนแคช; ฉันไม่จำเป็นต้องกลับไปที่แพ็คเก็ต การใช้สิ่งนี้กับเว็บหากเราสามารถให้หน้าเดียวกันกับผู้ใช้มากที่สุดแคชจะมีประสิทธิภาพมากขึ้นเนื่องจากคำขอมากขึ้นจะกระทบกับแคช
นั่นคือทฤษฎี มาเล่นกันเถอะ เริ่มต้นด้วยการดูการร้องขอการร้องขอสำหรับ HTML การแคชของทุกประเภทไฟล์ถูกควบคุมโดยใช้ส่วนหัว HTTP ส่วนหัวเป็นข้อมูล META (ข้อมูลเกี่ยวกับข้อมูล) ที่ส่งจากเซิร์ฟเวอร์ไปยังเบราว์เซอร์และมองเห็นฮาร์ดแวร์เครือข่ายทั้งหมดในระหว่างนั้น หากต้องการบอกโลกว่าได้รับอนุญาตให้แคชหน้าเว็บของเราและแบ่งปันแคชนั้นระหว่างผู้ใช้เราตั้งค่าส่วนหัวต่อไปนี้:
Cache-Control: public, max-age=30
ที่นี่เราได้กำหนดเวลา จำกัด เวลา: ระยะเวลาสูงสุดแคชควรนำหน้านี้มาใช้ซ้ำในไม่กี่วินาที สำหรับตัวอย่างนี้ฉันได้ตั้งค่าเป็น 30 วินาที
โดยการตั้งค่าหน้าเว็บเป็น 'สาธารณะ' เบราว์เซอร์ของผู้ใช้ (และฮาร์ดแวร์ใด ๆ ระหว่างทาง) จะเก็บสำเนาไว้ ดังนั้นโหลดหน้าแรกจะทำการร้องขอ แต่หน้าเว็บทั้งหมดโหลดหลังจากนั้นจะใช้การตอบกลับต้นฉบับอีกครั้งจนกว่าจะถึงเวลาที่กำหนด
ผลกระทบของฮาร์ดแวร์เครือข่ายระหว่างทางสามารถลึกซึ้ง เครือข่ายขนาดใหญ่จำนวนมาก (เช่น ISP) จะมีการแชร์แคชระหว่างผู้ใช้ ผู้ประกอบการมือถือยังใช้เทคนิคนี้อย่างมากเช่นการแคชและรีไซเคิลภาพที่ให้บริการมากกว่า 3G ผู้ประกอบการไซต์ยังสามารถวางแคช HTTP ต่อหน้าบริการของพวกเขา นี่คือสิ่งที่เราทำที่ BBC
เทคนิคที่เราใช้มากที่ BBC คือการรักษาสินทรัพย์แบบคงที่ (เช่นภาพ CSS และสคริปต์) แตกต่างกันไปตามหน้าเว็บ การแคชหน้า HTML ค้างไว้นานเกินไปอาจส่งผลให้ผู้ใช้ขาดการอัปเดตเนื้อหา แต่เราสามารถใช้ประโยชน์จากพฤติกรรมนี้เมื่อมันมาถึงสินทรัพย์คงที่
ที่บีบีซีเราส่งสินทรัพย์แบบคงที่ทั้งหมดที่มีอายุสูงสุด 31,536,000 วินาทีที่ตั้งอยู่ในส่วนหัวของแคช สิ่งนี้ทำให้มั่นใจว่าสินทรัพย์ถูกแคชเป็นเวลา 365 วัน มีผลบังคับใช้สินทรัพย์เป็นเพียงครั้งเดียว นี่เป็นสิ่งที่ดีสำหรับการแสดง แต่ไม่ดีต่อความยืดหยุ่นในการเปลี่ยนแปลงสินทรัพย์นั้นใช้เวลานานในการไปยังผู้ใช้
ในการแก้ไขปัญหานี้ทุกครั้งที่เราปล่อยหน้าใหม่ของหน้าเราเปลี่ยน URL ที่เก็บสินทรัพย์ เคล็ดลับนี้หมายความว่าการเปลี่ยนแปลงใหม่จะถูกนำมาใช้ต่อหน้าผู้ใช้ทันที แต่เรายังคงได้รับผลประโยชน์ประสิทธิภาพเดียวกัน
การแคชเพื่อเพิ่มประสิทธิภาพของเว็บไซต์จะเปลี่ยนต้นทุนการดำเนินงานที่ลดลงสำหรับเว็บไซต์ของเราและรักษาการไหลของผู้ใช้ของเราซึ่งนำไปสู่ประสบการณ์การใช้งานที่ยอดเยี่ยม
บทความนี้ได้รับการตีพิมพ์ครั้งแรกในฉบับที่ 279 ของ NET นิตยสารที่ขายดีที่สุดในโลกสำหรับนักออกแบบเว็บไซต์และนักพัฒนา ซื้อ ปัญหา 279 หรือ สมัครสมาชิกสุทธิ .
Jason Lengstorf เป็นนักพัฒนานักออกแบบผู้แต่งและหมีที่เป็นมิตร การมุ่งเน้นของเขาคือประสิทธิภาพและประสิทธิภาพของผู้คนทีมและซอฟต์แวร์ ที่ IBM เขาสร้างกระบวนการและระบบเพื่อสร้างสิ่งที่ถูกต้อง The Easy Thing ™ ในเวลาอื่น ๆ เขาล่องเรือในการค้นหาของว่างใหม่และดีกว่า
ในการประชุมเชิงปฏิบัติการของเขากลยุทธ์และเทคนิคการแสดงผลด้านหน้าที่ทันสมัยที่ สร้างนิวยอร์กตั้งแต่วันที่ 25-27 เมษายน 2561 เจสันจะแสดงผู้เข้าร่วมประชุมวิธีการปรับปรุงการรับรู้เวลาโหลด - นานแค่ไหนที่มันรู้สึกว่าใช้ในการโหลดหน้า - รวมถึงเวลาโหลดจริงโดยใช้เทคนิคส่วนหน้าเดียวเท่านั้นรวมถึง:
สร้างนิวยอร์กเกิดขึ้นตั้งแต่วันที่ 25-27 เมษายน 2561 รับตั๋วของคุณตอนนี้ .
บทความที่เกี่ยวข้อง:
(เครดิตรูปภาพ: Sonny Flanaghan) การเรียนรู้วิธีทำควา�..
(เครดิตภาพ: Jason Parnell-Brookes) บทช่วยสอนนี้จะแสดงวิธ�..
หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับ ..
ที่ Vecteezy Editor เป็นชุดแก้ไขเวกเตอร์ฟรีที่ทำง�..
มีพลอย เป็นเว็บไซต์ที่ดำเนินการโดย Henning Sanden �..
การตัดสินใจการตัดสินใจการตัดสินใจ ... หากมีสิ่งสำคัญอย่างหนึ่งต่อกร..