คอร์สก่อนปิดรูข้ามผู้เช่าไว้ที่บทสุดท้าย คอร์สนี้ถามว่าชั้นที่จำคำตอบไว้ ทำให้รูนั้นกลับมาไหม
คอร์สคัดกรองผู้เรียกของคลินิก จบด้วยกฎที่บอกว่าผู้เรียก
เห็นได้เฉพาะแถวของผู้เช่าตัวเอง กฎนั้นมีเทสต์บังคับไว้แล้ว และรูที่มันปิดเป็นรูที่ไม่มี
รหัส HTTP ให้ดู เพราะคำขอที่รั่วนั้นสำเร็จ
คอร์สนี้ใช้โปรเจกต์เดียวกันต่อ ไม่ได้เริ่มใหม่ สิ่งที่เพิ่มเข้าไปคือชั้นที่จำคำตอบไว้
ส่วนกฎของโดเมนกับกฎความปลอดภัยเดิม ไม่ถูกแก้สักบรรทัด
คำตอบที่วัดได้คือรูกลับมาเต็มรูป ผู้เรียกของคลินิกที่สองได้สองแถวของคลินิกแรก
พร้อมรหัส 200 และสามคำขอทำให้ฐานข้อมูลถูกถามครั้งเดียว
ส่วนคำถามว่ามีอะไรแดงบ้าง คำตอบไม่ใช่ไม่มี เทสต์ของคอร์สก่อนแดงจริงในทรงหนึ่ง
และเขียวในอีกทรงหนึ่ง ความต่างอยู่ที่หนึ่งบรรทัดใน config ของเทสต์ ไม่ได้อยู่ที่
code ของแอปสักตัวอักษร
ประกาศไว้ตรงนี้ เพื่อไม่ให้ใครอ่านจบแล้วเชื่อว่าได้ของที่คอร์สนี้ไม่ได้ให้
- ไม่วัดความเร็ว ทั้งคอร์สไม่มีหน่วยเวลาสักตัว หน่วยคือจำนวนแถว จำนวน query
ชื่อกุญแจ และรหัส HTTP เหมือนสามคอร์สก่อนหน้าในซีรีส์เดียวกัน
- ไม่ตั้ง Redis เพราะมันพา TTL เข้ามา ซึ่งเป็นหน่วยเวลา และต้องมี container ใบที่สอง
ถ้าวันหนึ่งจะสอน มันควรเป็นคอร์สของตัวเอง
- ไม่สอน cache stampede ต้องมีผู้เรียกพร้อมกันหลายราย ซึ่งวัดแบบไม่มี race ไม่ได้
ในแปดบทนี้
- ไม่แตะ HTTP caching อย่าง
ETag กับ Cache-Control เป็นคนละชั้นและคนละคำถาม
- ไม่สอน second-level cache ของ JPA มันเป็นชั้นใต้ repository ส่วนคอร์สนี้อยู่เหนือมัน
ต้องผ่านคอร์สที่ 35 มาก่อน ส่วนความรู้เรื่องกลไก cache ของ Spring ไม่ต้องมี
- ผ่าน คอร์สคัดกรองผู้เรียกของคลินิก มาแล้ว เพราะคอร์สนี้
วัดสัญญาที่คอร์สนั้นสร้างไว้ ไม่ได้สร้างสัญญาขึ้นใหม่
- อ่าน Kotlin ออกและเคยเขียน Spring Boot มาก่อน ระดับที่รู้ว่า bean มาจากไหนก็พอ
- ไม่ต้องรู้จัก
@Cacheable มาก่อน ทุกกลไกถูกอธิบายตอนที่มันโผล่ครั้งแรก
- ต้องมี Docker กับ Gradle เพราะทุกข้ออ้างในคอร์สนี้มาจาก probe ที่คุณรันเองได้
แผนผังนี้เติมขึ้นเองเมื่อบทเรียนถูกเพิ่มเข้ามา