Score:0

การดำเนินการ haproxy ของบรรทัดหลังจากบรรทัดปฏิเสธคำขอ http หยุดทำงานหรือไม่

ธง id

ฉันสับสนมากและไม่สามารถหาคำตอบได้: อะไรทำให้หยุดการดำเนินการของบรรทัดการกำหนดค่าใน haproxy หรือทั้งหมดจะถูกดำเนินการและประเมินในตอนท้าย

ฉันอยู่ภายใต้ความประทับใจว่า if เป็นเงื่อนไข http-คำขอปฏิเสธ [...] จะทริกเกอร์ มันจะหยุดการดำเนินการตรงนั้น แต่บางตัวอย่างก็ไม่สมเหตุสมผล

ตัวอย่าง (จาก เอกสารแฮพร็อกซี):

ส่วนหน้า fe_main
   ผูก :80

   # กำหนดตารางติด
   stick-table ประเภท ip ขนาด 100k หมดอายุ 24h store http_req_rate(5s),gpc0,gpt0

   # เริ่มติดตามคำขอที่คีย์ในตาราง
   # คือ IP ต้นทางของลูกค้า
   http-ขอแทร็ก-sc0 src

   # มีลูกค้าเกิน 20 คำขอใน 5 วินาทีหรือไม่
   acl เกิน_rate_limit sc_http_req_rate(0) gt 20

   # ตั้งค่าสถานะหากเกินขีดจำกัด
   http-request sc-set-gpt0(0) 1 ถ้าเกิน_rate_limit

   # ถ้าเกินขีดจำกัด 3 ครั้ง ให้ทำเครื่องหมายว่ารู้จักความเร็ว
   aclknown_speeder sc_get_gpc0(0) ge 3

   # ปฏิเสธไคลเอนต์ทั้งหมดที่เกินขีด จำกัด หรือเป็นที่รู้จักของ speeders
   http-request ปฏิเสธการปฏิเสธสถานะ 429 ถ้าเกิน_rate_limit || Know_speeder

   # นับทุกครั้งที่เกินขีดจำกัดหากถูกตั้งค่าสถานะ
   acl issue_speeding_ticket sc_get_gpt0(0) eq 1
   http-request sc-inc-gpc0(0) ถ้า issue_speeding_ticket

   #รีเซ็ตค่าสถานะ
   http-คำขอ sc-set-gpt0(0) 0

   default_backend be_servers

ถ้า http-คำขอปฏิเสธ จะหยุดการดำเนินการ (อย่างที่ฉันคิดไว้) ดังนั้นสำหรับสองกรณีนี้จะไม่ทำงานตามที่ตั้งใจไว้ใช่ไหม

  • หากไคลเอนต์ส่งคำขอ HTTP ที่เกินขีดจำกัดอย่างต่อเนื่อง acl เกิน_rate_limit ประเมินเป็นจริงดังนั้น http-คำขอปฏิเสธ จะทำให้ sc-inc-gpc0 สายเข้าไม่ได้และจะไม่มีการออกบัตรเร่งให้
  • หากลูกค้าใช้เกินอัตราที่กำหนดแล้วหยุดถาวร จะไม่มีการออกใบสั่งเร่งให้เนื่องจากคำขอครั้งล่าสุดถูกปฏิเสธ คล้ายกับกรณีก่อนหน้า
  • หากลูกค้าใช้อัตราเกินขีดจำกัดแล้วลดความเร็วลงจนไม่เกินขีดจำกัดอีกต่อไป (และทำงานในลักษณะนี้อีกครั้ง) จะมีการออกใบสั่งเร่งให้ นี่เป็นสิ่งที่ตรงกันข้ามกับสิ่งที่ฉันคาดว่าจะเกิดขึ้น

ถ้า http-คำขอปฏิเสธ ไม่หยุดการดำเนินการ แล้วมันคลุมเครือมากเกี่ยวกับสิ่งที่จะเกิดขึ้นกับคำขอ? จะเป็นอย่างไรถ้าเป็นอย่างอื่น http-คำขอ การแข่งขันสาย; คนสุดท้ายจะชนะหรือไม่

ภาพรวมที่ใหญ่กว่านี้คือฉันกำลังพยายามทำบางสิ่งที่คล้ายกับกรณีการใช้งานตัวอย่างให้สำเร็จฉันต้องการตารางที่แสดงจำนวนครั้งที่ IP ต้นทางถึงขีดจำกัดอัตรา (แต่นับเพียงครั้งเดียวสำหรับการรักษาสถานะเกินขีดจำกัดอัตรา)

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

โพสต์คำตอบ

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