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

בדף הזה מתוארות כללי מדיניות של 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: פינוי המפתחות שנעשה בהם שימוש לפני הכי הרבה זמן (LRU) ושהוגדרו עם תפוגות TTL.
  • ‫allkeys-random: פינוי מפתחות אקראיים מכל מרחב המפתחות.
  • ‫volatile-random: פינוי מפתחות אקראיים מבין אלה שהוגדרו עם תפוגת TTL.
  • ‫volatile-ttl: פינוי המפתחות עם ה-TTL הקצר ביותר מבין אלה שהוגדרו עם תפוגת TTL.

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

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

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

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

ערך ברירת המחדל תלוי בסוג הצומת. מידע נוסף זמין במאמר מאפייני צומת.
maxmemory מגדיר מגבלה שניתן לשנות, שבה מדיניות הפינוי נכנסת לתוקף. מגדירים את מגבלת ה-maxmemory ברמת הצומת הספציפי, אבל ההגדרה חלה על כל הצמתים. לדוגמה, נניח שיש לכם מכונה עם 3 צמתים, אתם משתמשים בסוג צומת של 58GB ב-redis-highmem-xlarge, ואתם רוצים להגדיר את 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. ""
ללא אירוע (ברירת מחדל)
K
אירועי Keyspace, שפורסמו עם הקידומת ‎__keyspace@<db>__‎.
E
אירועי Keyevent, שמתפרסמים עם הקידומת ‎__keyevent@<db>__‎.
g
פקודות כלליות (לא ספציפיות לסוג) כמו DEL,‏ EXPIRE או RENAME
$
פקודות מחרוזת
l
פקודות רשימה
s
פקודות הגדרה
h
פקודות גיבוב (hash)
z
פקודות הגדרה ממוינות
x
אירועים שפג תוקפם (אירועים שנוצרים בכל פעם שתוקף המפתח פג)
e
אירועים שהוסרו (אירועים שנוצרים כשמפתח מוסר בגלל maxmemory)
A
כינוי ל-g$lshzxe, כך שהמחרוזת "AKE" מייצגת את כל האירועים.
slowlog-log-slower-than מאפשרת להגדיר את יומן הרישום האיטי. מציין את סף זמן הביצוע (במיקרו-שניות). בכל פעם שפקודה חורגת מהסף הזה, היא מתווספת ליומן האיטי. ערך ברירת המחדל הוא 10,000.

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

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

ב-Memorystore for Redis Cluster, הערך של פרמטר ההגדרה proto-bulk-max-len הוא 256MB. אי אפשר לשנות את הערך הזה.