ข้อมูลหลักเว็บและมือถือ

การจัดการเซสชัน

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

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

แต่ละอุปกรณ์ได้เซสชันของตนเองที่หมดอายุใน 30 นาที

เซสชันตัวอย่างplaying
# ลงชื่อเข้าใช้บนสามอุปกรณ์
hotkv> SET session:9f2c "{\"user\":42}" EX 1800
OK

ตัวอย่างแบบแอนิเมชันพร้อมคำสั่ง HotKV จริงและคำตอบตัวอย่าง คลิกขั้นตอนใดก็ได้เพื่อข้ามไปยังขั้นนั้น คำสั่งและคำตอบยังคงเป็นภาษาอังกฤษ ตรงตามที่คุณพิมพ์และเห็นใน HotKV

ปัญหา

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

HotKV จัดการอย่างไร

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

ทีละขั้นตอน

เกิดอะไรขึ้นบ้าง ทีละคำสั่ง

  1. 01

    ลงชื่อเข้าใช้บนสามอุปกรณ์

    แต่ละอุปกรณ์ได้เซสชันของตนเองที่หมดอายุใน 30 นาที

    SET session:9f2c "{\"user\":42}" EX 1800
  2. 02

    ติดแท็กแต่ละเซสชัน

    ผู้ใช้ บทบาท และอุปกรณ์ถูกแนบทันทีหลังสร้างเซสชัน

    TAG.SET session:9f2c user:42 role:admin device:ios
  3. 03

    คงการลงชื่อเข้าใช้ไว้ขณะที่ใช้งาน

    ทุกคำขอรีเฟรชเวลาหมดอายุ ซึ่งให้ timeout แบบเลื่อน

    EXPIRE session:9f2c 1800
  4. 04

    หาทุกเซสชันของผู้ใช้ 42

    มีการรายงานว่าแล็ปท็อปถูกขโมย การค้นหาครั้งเดียวคืนทุกเซสชันของผู้ใช้

    TAG.MEMBERS user:42
  5. 05

    ออกจากระบบทุกที่

    ลบคีย์ที่ได้กลับมา แท็กหายไปพร้อมกัน และทุกอุปกรณ์ถูกออกจากระบบ

    DEL session:9f2c session:71aa session:0c8e
เหมาะกับงานแบบไหน

สถานการณ์จริง

แอปธนาคารและฟินเทค

ทีมความปลอดภัยยุติทุกเซสชันของบัญชีที่ถูกบุกรุก หรือของทุกอุปกรณ์บนแอปเวอร์ชันที่ล้าสมัย ในการดำเนินการเดียว

ผลิตภัณฑ์ SaaS

เมื่อบทบาทของแอดมินถูกถอดออก ทุกเซสชันที่ติดแท็กบทบาทนั้นถูกเพิกถอนพร้อมกัน

บริการสตรีมมิง

นับและจำกัดจำนวนเซสชันพร้อมกันต่อบัญชีจากคำตอบของ TAG.MEMBERS บนแท็กผู้ใช้

อยู่ในตัว

สิ่งที่คุณได้รับ

หมดอายุอัตโนมัติ

เซสชันหายไปเองเมื่อ TTL หมด และแท็กหายไปพร้อมกัน

EXEXPIRE

ค้นหาโดยไม่ต้องมีดัชนี

ค้นหาเซสชันด้วยแท็กใดก็ได้ หรือหลายแท็กพร้อมกัน

TAG.MEMBERSTAG.INTER

ตรวจแท็กได้อย่างรวดเร็ว

TAG.COUNT และ TAG.EXISTS บอกว่าคีย์มีอะไร

TAG.COUNTTAG.EXISTS

เร็วแม้ล็อกอินพร้อมกันจำนวนมาก

การอ่านและเขียนเซสชันทำงานบนเธรดขนานกัน

ข้อมูลอ้างอิง:TAG.SETTAG.MEMBERSTAG.INTERTAG.COUNT

คำถามที่พบบ่อย

ทำให้ผู้ใช้ออกจากระบบเฉพาะอุปกรณ์เดียวได้อย่างไร

ใช้ TAG.INTER กับแท็กผู้ใช้และแท็กอุปกรณ์ แล้วลบคีย์ที่ได้กลับมา

แท็กจะเป็นอย่างไรเมื่อเซสชันหมดอายุ

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

จำกัดเซสชันพร้อมกันต่อบัญชีได้ไหม

ได้ TAG.MEMBERS บนแท็กผู้ใช้แสดงรายการเซสชัน คุณจึงนับได้ และปฏิเสธหรือยุติเซสชันที่เก่าที่สุดตอนลงชื่อเข้าใช้

กรณีใช้งานที่เกี่ยวข้อง

ลองกับเวิร์กโหลดของคุณเอง

HotKV ใช้โปรโตคอลของ Redis คุณจึงชี้ไคลเอนต์ที่มีอยู่มาที่ HotKV แล้วรันคำสั่งเดียวกันนี้ได้