הגדרות נתמכות של מכונות

בדף הזה מתוארים כללי מדיניות של maxmemory והגדרות אחרות של Redis שזמינות ב-Memorystore for Redis Cluster.

הוראות לשינוי ההגדרות שמופיעות בדף הזה מפורטות במאמר הגדרת מופע.

כללי מדיניות בנושא maxmemory

כשהזיכרון של המכונה מלא ומגיעה פעולת כתיבה חדשה, Redis מסיר מפתחות כדי לפנות מקום לכתיבה, בהתאם למדיניות maxmemory של המכונה. מדיניות ברירת המחדל של maxmemory ב-Memorystore for Redis Cluster היא volatile-lru. אפשר גם להשתמש באחת ממדיניות maxmemory הבאות:

  • noeviction: מחזירה שגיאה כשהמופע מגיע לערך maxmemory. לא מתבצעת החלפה או מחיקה של נתונים.
  • allkeys-lfu: מוציא את המפתחות שהשימוש בהם הכי פחות נפוץ (LFU) מכל קבוצת המפתחות.
  • allkeys-lru: מוציא את המפתחות שהיו בשימוש הכי פחות לאחרונה (LRU) מכלל קבוצת המפתחות.
  • volatile-lfu: מוציא מהזיכרון את המפתחות שהשימוש בהם הכי פחות נפוץ, שהוגדר להם זמן תפוגה (TTL).
  • volatile-lru: מוציא מהזיכרון מפתחות שהוגדרו עם תפוגות TTL, לפי סדר השימוש האחרון (LRU).
  • allkeys-random: מוציא מפתחות אקראיים מכל מרחב המפתחות.
  • volatile-random: מוציא מזיכרון המטמון מפתחות אקראיים מבין המפתחות שהוגדר להם זמן חיים (TTL).
  • volatile-ttl: מוציא את המפתחות עם ה-TTL הקצר ביותר מבין אלה שהוגדרו עם תפוגות TTL.

פרמטרים להגדרה שאפשר לשנות

אפשר לשנות את הפרמטרים הבאים כשיוצרים או מעדכנים Memorystore עבור מכונת Redis Cluster.

פרמטר תיאור ערכים קבילים
maxmemory-clients Redis 7.0 ואילך. ההגדרה הזו מאפשרת למשתמשים לשלוט בשימוש המקסימלי בזיכרון של לקוחות.

השימוש הכולל בזיכרון של לקוחות רגילים או של לקוחות pubsub. אם תגיעו למגבלה, הלקוח עם השימוש הכי גבוה בזיכרון יוסר.
ערכים קבילים הם ערכי אחוזים של מספרים שלמים בין 0% ל-100%. הערך מייצג את אחוז הזיכרון המקסימלי של המופע שאליו מוגבל האחסון של הלקוח.

ערך ברירת המחדל תלוי בסוג הצומת. מידע נוסף זמין במאמר מאפייני הצומת.
maxmemory מגדיר סף שניתן להתאמה, שמעליו מדיניות ההוצאה שלכם נכנסת לתוקף. מגדירים את המגבלה maxmemory ברמת הצומת הבודד, אבל ההגדרה חלה על כל הצמתים. לדוגמה, נניח שיש לכם מופע עם 3 צמתים, אתם משתמשים בredis-highmem-xlarge סוג צומת בנפח 58GB, ואתם רוצים להגדיר את maxmemory ל-90% מהקיבולת הכוללת של המופע. כדי לעשות את זה, מגדירים את maxmemory ל-52.2GB, שהם 90% מהקיבולת של הצומת. ההגדרה הזו חלה על כל הצמתים, והיא קובעת את המגבלה הכוללת של זיכרון מקסימלי למופע ב-90%. מידע נוסף על תקורה שמורה כברירת מחדל זמין במאמר קיבולת של מרחב מפתחות ותקורה שמורה. מגבלת הזיכרון המקסימלית של המופע.

היחידות הנתמכות הן:

b (ברירת מחדל)
k
kb
m
mb
g
gb
maxmemory-policy מציין את ההתנהגות של Redis כשנתוני המופע מגיעים למגבלת maxmemory. מידע נוסף על כל מדיניות זמין במאמר בנושא מדיניות Maxmemory.

למידע נוסף על מדיניות ה-maxmemory של Redis בקוד פתוח, אפשר לעיין בדף בנושא מטמון LRU של Redis בקוד פתוח.
noeviction
allkeys-lru
volatile-lru (ברירת מחדל)
allkeys-random
volatile-random
volatile-ttl
volatile-lfu (Redis גרסה 4.0 ואילך)
allkeys-lfu (Redis גרסה 4.0 ואילך)
notify-keyspace-events מאפשר ללקוחות להירשם לקבלת התראות על אירועים מסוימים במרחב המפתחות. מידע נוסף זמין במאמר בנושא התראות על מרחב מפתחות ב-Redis. ""
No event (ברירת מחדל)
K
אירועים במרחב המפתחות, שמתפרסמים עם הקידומת ‎__keyspace@<db>__‎.
E
אירועי Keyevent, שמתפרסמים עם הקידומת ‎__keyevent@<db>__‎.
g
פקודות כלליות (לא ספציפיות לסוג) כמו DEL,‏ EXPIRE או RENAME
$
פקודות מחרוזת
l
פקודות רשימה
s
פקודות הגדרה
h
פקודות גיבוב
z
פקודות של קבוצות ממוינות
x
אירועים שתוקפם פג (אירועים שנוצרים בכל פעם שתוקף המפתח פג)
e
אירועים שהוצאו (אירועים שנוצרים כשמפתח מוצא בגלל maxmemory)
A
כינוי ל-g$lshzxe, כך שהמחרוזת AKE מייצגת את כל האירועים.
slowlog-log-slower-than מאפשרת להגדיר את היומן האיטי. מציין את ערך הסף של זמן הביצוע (במיקרו-שניות). בכל פעם שפקודה חורגת מהסף הזה, היא מתווספת ליומן הפעילות האיטי. ערך ברירת המחדל הוא 10,000.

ערך של אפס מאלץ את הרישום ביומן של כל פקודה. לעומת זאת, ערך של ‎-1 משבית את היומן האיטי. כל ערך שלילי אחר יידחה.
maxclients מאפשרת להגדיר את ההגדרה maxclients למופע. מידע על המגבלה ועל ברירת המחדל של maxclients למופע זמין במאמר Max clients. ערך ברירת המחדל תלוי בסוג הצומת. מידע נוסף זמין במאמר בנושא מאפייני הצומת.