สถานะ IDLE หมายถึงอะไรในแถว pg_stat_activity


14

ใครสามารถแก้ไขข้อสงสัยด้านล่างของฉันpg_stat_activityในแง่ของ postgres 9.5 ได้ไหม

  1. บางคนให้ฉันรู้ว่าสิ่งที่state IDLEซึกในแถวของpg_stat_activity? มันเหมือนว่ามันจะตรวจสอบการเชื่อมต่อที่เปิดอยู่ทั้งหมดเพื่อ postgres และหากการเชื่อมต่อไม่ได้ดำเนินการค้นหาใด ๆ แล้วIDLEแสดงว่าแบบสอบถามล่าสุดที่ดำเนินการโดยการเชื่อมต่อ?
  2. ในผลลัพธ์ของselect * from pg_stat_activityฉันเห็นแถวด้วยstate IDLEและอายุquery_start_dateมากกว่า 2 วันหรือไม่ สิ่งนี้มีความหมายว่าอะไร? ฉันควรจะต้องกังวลเกี่ยวกับเรื่องนี้?
  3. บางคนสามารถแจ้งให้เราทราบได้อย่างไรว่าประชากร pg_stat_activity หากฉันกำลังดำเนินการค้นหาเช่นSelect * from pg_stat_activityจะสร้างรายละเอียดจากสแน็ปช็อตบางส่วนที่ดูแลโดย postgres หรือตรวจสอบการเชื่อมต่อปัจจุบันที่เปิดใน postgres เพื่อให้รายละเอียดหรือไม่

คำตอบ:


11

สิ่งนี้ได้รับการตอบในรายการส่งเมล postgres

แต่ละแถวใน pg_stat_activity แสดงถึงการเชื่อมต่อไปยังเซิร์ฟเวอร์จากไคลเอนต์ "ว่าง" หมายความว่าลูกค้าไม่ได้ดำเนินการค้นหาหรือทำธุรกรรมในขณะนี้

ถ้า query_start_date มีอายุ 2 วันนั่นหมายถึงการสืบค้นล่าสุดที่จะดำเนินการกับการเชื่อมต่อนั้นคือเมื่อสองวันก่อน

ไม่ใช่เหตุผลที่น่าเป็นห่วงเว้นแต่คุณจะมีการเชื่อมต่อมากมายที่เปิดให้ใช้ RAM มากกว่าที่คุณสามารถจ่ายได้ โดยทั่วไปเป็นที่ต้องการสำหรับกลุ่มการเชื่อมต่อที่จะมีการเชื่อมต่อที่ไม่ได้ใช้งานสองสามครั้งดังนั้นเคียวรีจะไม่ประสบความล่าช้าในการสร้างการเชื่อมต่อใหม่

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