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

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

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

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

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

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

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

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


פרמטר תיאור ערכים קבילים
activedefrag גרסה 4.0 של Redis ואילך. התכונה הזו פועלת כדי לפנות זיכרון במכונה שמוקצה להתנהגות הפיצול של הזיכרון ב-OSS Redis. no (ברירת מחדל)
yes
databases גרסה 3.2 של Redis ואילך. מציינים את מספר מסדי הנתונים בשרת Redis. 1-100
ברירת המחדל היא 16
lazyfree-lazy-eviction גרסה 7.0 של Redis ואילך. הפעלה או השבתה של שחרור מדורג של זיכרון להוצאה מהזיכרון. no משבית את ההגדרה הזו. מידע נוסף זמין במאמר בנושא REDIS.CONF. no (ברירת מחדל)
yes
lazyfree-lazy-expire גרסה 7.0 של Redis ואילך. הפעלה או השבתה של טעינה מדורגת של תמונות שפג תוקף הרישיון שלהן. no משבית את ההגדרה הזו. מידע נוסף זמין במאמר בנושא REDIS.CONF. no (ברירת מחדל)
yes
lazyfree-lazy-user-del גרסה 7.0 של Redis ואילך. ההגדרה הזו מפעילה או משביתה שחרור עצל של זיכרון למשתמש DEL. no משביתה את ההגדרה הזו. מידע נוסף זמין במאמר בנושא REDIS.CONF. no (ברירת מחדל)
yes
lazyfree-lazy-user-flush גרסה 7.0 של Redis ואילך. הגדרה שמאפשרת או משביתה את השחרור העצל של זיכרון המטמון של המשתמש. no משבית את ההגדרה הזו. מידע נוסף זמין במאמר בנושא REDIS.CONF. no (ברירת מחדל)
yes
lfu-decay-time גרסה 4.0 של Redis ואילך. הזמן, בדקות, לפני שמונה התדירות של LFU עבור מפתח נתון יחולק בשניים (או, אם המונה הוא < 10, הוא יופחת ב-1). פרטים נוספים זמינים בקובץ REDIS.CONF. מספרים שלמים חיוביים מסוג הנתונים 'long'
(ברירת מחדל=1)
lfu-log-factor גרסה 4.0 של Redis ואילך. קובע איך מונה התדירות מייצג הקשות על מקשים. לפני שמשנים את הגדרות ברירת המחדל, כדאי לקרוא על אופן הפעולה של ההגדרות lfu-log-factor בקובץ REDIS.CONF. מספרים שלמים חיוביים מסוג הנתונים 'long'
(ברירת מחדל=10)
maxmemory-clients Redis 7.0 ואילך. ההגדרה הזו מאפשרת למשתמשים לשלוט בשימוש המקסימלי בזיכרון של לקוחות.

השימוש הכולל בזיכרון של לקוחות רגילים או של לקוחות pubsub. אם מגיעים למגבלה, הלקוח עם השימוש הכי גבוה בזיכרון יסולק
ערך ברירת המחדל הוא 0% (ללא הגבלה). הערכים הקבילים הם אחוזים של מספרים שלמים בין 0% ל-100%. הערך הזה מייצג את אחוז הזיכרון המקסימלי של המופע שאליו מוגבל האחסון של הלקוח.
maxmemory-gb מגדיר מגבלה שניתנת להתאמה, שמעליה מדיניות ההוצאה שלכם נכנסת לתוקף. לדוגמה, אם יש לכם מופע בנפח 10GB והגדרתם את maxmemory-gb ל-8, מדיניות ההוצאה שלכם תיכנס לתוקף כשהנתונים יתפסו 8GB מזיכרון המופע. זה משאיר לכם 2GB של זיכרון כתוספת. כברירת מחדל, maxmemory-gb מוגדר לקיבולת המופע. פרטים נוספים על השימוש בהגדרת maxmemory-gb מופיעים במאמר שיטות מומלצות לניהול זיכרון ב-Memorystore.

ההגדרה הזו מוצגת כ-maxmemory-percent במסוףGoogle Cloud . כשמשתמשים במסוף, מגדירים את maxmemory-percent כאחוז מקיבולת המופע ולא כמספר ספציפי של GB.
מספר ה-GB שמוצג כמספר שלם או כשבר עשרוני.
דוגמאות:
10 מציין maxmemory-gb של 10GB.
1.5 מציין maxmemory-gb של 1.5GB.
אפשר להקטין את maxmemory-gb למינימום של 20% מהקיבולת של המופע.
maxmemory-policy מציין את ההתנהגות של Redis כשנתוני המכונה מגיעים למגבלת maxmemory-gb. תיאור של ההתנהגות של כל מדיניות מופיע במאמר Maxmemory policies.

מידע נוסף על מדיניות maxmemory של Redis בקוד פתוח זמין בדף בנושא מטמון LRU של Redis בקוד פתוח.
noeviction
allkeys-lru
volatile-lru (ברירת מחדל)
allkeys-random
volatile-random
volatile-ttl
volatile-lfu (גרסה 4.0 ואילך של Redis)
allkeys-lfu (גרסה 4.0 ואילך של Redis)
notify-keyspace-events מאפשר ללקוחות להירשם לקבלת התראות על אירועים מסוימים במרחב המפתחות. מידע נוסף זמין בדף Redis Keyspace Notifications באתר של Redis. "" (ברירת מחדל)
K
אירועים במרחב המפתחות, שמתפרסמים עם הקידומת ‎__keyspace@__‎.
E
אירועים של keyevent, שמתפרסמים עם הקידומת ‎__keyevent@__‎.
g
פקודות כלליות (לא ספציפיות לסוג) כמו DEL,‏ EXPIRE או RENAME
$
פקודות מחרוזת
l
פקודות רשימה
s
פקודות להגדרת קבוצה
h
פקודות גיבוב
z
פקודות להגדרת קבוצה ממוינת
x
אירועים שפג תוקפם (אירועים שנוצרים בכל פעם שתוקף של מפתח פג)
e
אירועים שהוצאו (אירועים שנוצרים כשמפתח מוצא בגלל maxmemory)
A
כינוי ל-g$lshzxe, כך שהמחרוזת AKE מייצגת את כל האירועים.
stream-node-max-bytes גרסה 5.0 של Redis ואילך. מבנה הנתונים של הזרם ב-Redis משתמש בעץ רדיקס לאחסון פריטים. הפרמטר stream-node-max-bytes מציין את המספר המקסימלי של בייטים שזמינים לאחסון פריטים בצומת עץ יחיד. כשמגיעים למגבלה הזו, פריטים חדשים מאוחסנים בצומת עץ חדש. מספרים שלמים מ-0 ומעלה.
(ברירת מחדל=4096)
0 מציין צומת עץ בגודל בלתי מוגבל.
stream-node-max-entries גרסה 5.0 של Redis ואילך. מבנה הנתונים של הזרם ב-Redis משתמש בעץ רדיקס כדי לאחסן פריטים. הפרמטר stream-node-max-entries מציין את מספר הפריטים שאפשר לאחסן בצומת יחיד. כשמגיעים למגבלה הזו, פריטים חדשים נשמרים בצומת חדש בעץ. מספרים שלמים מ-0 ומעלה.
(ברירת מחדל=100)
0 מציין צומת בעץ עם מספר בלתי מוגבל של פריטים.
timeout מספר השניות לפני שחיבורים של לקוחות בלי פעילות יסתיימו. עם זאת, אם הערך של timeout הוא 0, לא יחול זמן קצוב לתפוגה על לקוחות בלי פעילות והם יישארו מחוברים עד שהלקוח ינפיק את הסיום. ‫0 (ברירת מחדל)
מספרים שלמים >= 120
היחידה = שניות

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

בטבלה הבאה מפורטים פרמטרים של הגדרות Redis שלא ניתן לשנות ב-Memorystore for Redis, וערכי ברירת המחדל שלהם. מידע מפורט על פרמטרים להגדרה זמין במסמכי התיעוד בנושא הגדרת Redis.

פרמטר ערך ברירת המחדל
lua-time-limit 5,000
hash-max-ziplist-entries 2048
hash-max-ziplist-value 1024
list-max-ziplist-size -2
list-compress-depth . 0
set-max-intset-entries 512
zset-max-ziplist-entries 1024
zset-max-ziplist-value 1024
hll-sparse-max-byte 3000
activerehashing כן
hz 10
databases 16
maxclients 65000
slowlog-log-slower-than 10000
slowlog-max-len 128
repl-diskless-load swapdb
io-threads-do-reads כן

המאמרים הבאים

  • מידע נוסף על הגדרות Redis זמין בדף הגדרות Redis בקוד הפתוח.