จะรู้ได้อย่างไรว่า Squid Proxy ทำการแคชได้อย่างถูกต้อง


12

ฉันต้องการทดสอบว่าลูกค้าที่แนบมากับ Squid Server ใช้ข้อมูลแคชแทนไปที่อินเทอร์เน็ตโดยตรงและดึงข้อมูลหรือไม่ ฉันได้กำหนดค่าเบราว์เซอร์ไคลเอนต์ทั้งหมดเพื่ออ่านเซิร์ฟเวอร์: พอร์ตจากเซิร์ฟเวอร์ Squid (ซึ่งคือ 10.42.0.1:3128) ดังนั้นฉันจะรู้ได้อย่างไรว่าพวกเขากำลังดึงข้อมูลจากแคชหรืออินเทอร์เน็ต

ฉันถามตั้งแต่ "การทดสอบ" อย่างรวดเร็วทำให้ฉันมีความเร็วเท่ากันเมื่อโหลดหลาย ๆ หน้าที่มีภาพมากมาย ภาพเดียวกันและไม่ใช่โฆษณาที่เปลี่ยนแปลงทุกครั้งที่เข้าชม

ฉันสามารถใช้วิธีใดในการตรวจสอบว่าใช้แคชหรือไม่

ฉันวิ่งต่อไปนี้sudo tail -f /var/log/squid3/access.logและมีหลายบรรทัดที่ยังคงเลื่อน:

1374553166.136    929 185.168.101.131 TCP_MISS/200 28198 GET http://www.amazon.de/gp/offer-listing/B000NOIW62/ref=sr_1_1_olp? - DIRECT/178.236.7.219 text/html

พวกเขามีTCP_MISS / 200และในตอนท้ายมีDIRECTตามตัวอย่างข้างต้น สิ่งนี้เกิดขึ้นขณะที่ฉันปิดคอมพิวเตอร์ทั้งหมดใน LAN เมื่อฉันพยายามที่จะใช้ฉันได้รับดังต่อไปนี้ทำsudo tail -f /var/log/squid3/access.log | grep HIT

1374553387.488      0 10.42.0.14 TCP_IMS_HIT/304 278 GET http://g-ecx.images-amazon.com/images/G/01/da/creatives/sn130.png - NONE/- image/png

ดังนั้นจึงแสดงเป็นTCP_IMS_HIT / 304และในตอนท้ายจะแสดงNONE

ดังนั้น TCP_MISS, DIRECT, TCP_IMS_HIT และ NONE หมายความว่าอย่างไร

แคชทำงานหรือไม่

คำตอบ:


15

ในเทอร์มินัลบนเซิร์ฟเวอร์ที่รัน squid อยู่ให้รันคำสั่ง

tail -f /var/log/squid3/access.log

จากนั้นดูในฐานะผู้ใช้เยี่ยมชมหน้าเว็บ หากมีหลายบรรทัดเลื่อนขึ้นหน้าจอเมื่อใดก็ตามที่พวกเขาคลิกที่อะไรบางอย่างพวกเขากำลังใช้พร็อกซีเซิร์ฟเวอร์ หากไม่พบไฟล์บันทึกการทำงานของไฟล์ให้ดูที่ / etc / squid เพื่อดูตำแหน่งของไฟล์บันทึก

หากต้องการออกจากคำสั่งด้านบนให้กด ctrl + c

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

เช่นเมื่ออีเมล allstaff หยุดพูดว่า "ตรวจสอบเว็บไซต์นี้ ... "

  • TCP_MISS / 200 หมายความว่าเอกสารที่ร้องขอไม่ได้อยู่ในแคช แต่สามารถดึงข้อมูลได้ตกลงจากเว็บเซิร์ฟเวอร์ ตรงที่สุดบอกว่าไฟล์ถูกดึงมาจากเว็บเซิร์ฟเวอร์
  • TCP_IMS_HIT / 304 หมายความว่าไคลเอนต์ถามว่าไฟล์มีการเปลี่ยนแปลงหรือไม่และ squid ตรวจสอบวันที่ / เวลาบนเว็บเซิร์ฟเวอร์และพบว่ามันไม่ได้เปลี่ยนดังนั้นจึงให้สำเนาของไฟล์ไปยังไคลเอนต์จากแคชท้องถิ่น

ใช่แล้วปลาหมึกของคุณกำลังถูกใช้และทำงานเป็นแคช


อัปเดตคำถามเพื่อดูว่าคุณสามารถช่วยเหลือเพิ่มเติมได้ไหม
Luis Alvarado

@Luis Alvardo อัปเดตคำตอบเพื่อช่วยเพิ่มเติม
BeowulfNode42
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.