Latest web development tutorials

การกำหนดค่า Redis

แฟ้มการกำหนดค่า Redis Redis อยู่ในไดเรกทอรีการติดตั้งภายใต้ชื่อไฟล์ redis.conf

คุณสามารถConfig เพื่อดูคำสั่งหรือการตั้งค่ารายการค่า


ไวยากรณ์

รูปแบบคำสั่ง Redis CONFIG เป็นดังนี้:

redis 127.0.0.1:6379> CONFIG GET CONFIG_SETTING_NAME

ตัวอย่าง

redis 127.0.0.1:6379> CONFIG GET loglevel

1) "loglevel"
2) "notice"

กด * จะได้รับรายการการตั้งค่าทั้งหมด:

ตัวอย่าง

redis 127.0.0.1:6379> CONFIG GET *

  1) "dbfilename"
  2) "dump.rdb"
  3) "requirepass"
  4) ""
  5) "masterauth"
  6) ""
  7) "unixsocket"
  8) ""
  9) "logfile"
 10) ""
 11) "pidfile"
 12) "/var/run/redis.pid"
 13) "maxmemory"
 14) "0"
 15) "maxmemory-samples"
 16) "3"
 17) "timeout"
 18) "0"
 19) "tcp-keepalive"
 20) "0"
 21) "auto-aof-rewrite-percentage"
 22) "100"
 23) "auto-aof-rewrite-min-size"
 24) "67108864"
 25) "hash-max-ziplist-entries"
 26) "512"
 27) "hash-max-ziplist-value"
 28) "64"
 29) "list-max-ziplist-entries"
 30) "512"
 31) "list-max-ziplist-value"
 32) "64"
 33) "set-max-intset-entries"
 34) "512"
 35) "zset-max-ziplist-entries"
 36) "128"
 37) "zset-max-ziplist-value"
 38) "64"
 39) "hll-sparse-max-bytes"
 40) "3000"
 41) "lua-time-limit"
 42) "5000"
 43) "slowlog-log-slower-than"
 44) "10000"
 45) "latency-monitor-threshold"
 46) "0"
 47) "slowlog-max-len"
 48) "128"
 49) "port"
 50) "6379"
 51) "tcp-backlog"
 52) "511"
 53) "databases"
 54) "16"
 55) "repl-ping-slave-period"
 56) "10"
 57) "repl-timeout"
 58) "60"
 59) "repl-backlog-size"
 60) "1048576"
 61) "repl-backlog-ttl"
 62) "3600"
 63) "maxclients"
 64) "4064"
 65) "watchdog-period"
 66) "0"
 67) "slave-priority"
 68) "100"
 69) "min-slaves-to-write"
 70) "0"
 71) "min-slaves-max-lag"
 72) "10"
 73) "hz"
 74) "10"
 75) "no-appendfsync-on-rewrite"
 76) "no"
 77) "slave-serve-stale-data"
 78) "yes"
 79) "slave-read-only"
 80) "yes"
 81) "stop-writes-on-bgsave-error"
 82) "yes"
 83) "daemonize"
 84) "no"
 85) "rdbcompression"
 86) "yes"
 87) "rdbchecksum"
 88) "yes"
 89) "activerehashing"
 90) "yes"
 91) "repl-disable-tcp-nodelay"
 92) "no"
 93) "aof-rewrite-incremental-fsync"
 94) "yes"
 95) "appendonly"
 96) "no"
 97) "dir"
 98) "/home/deepak/Downloads/redis-2.8.13/src"
 99) "maxmemory-policy"
100) "volatile-lru"
101) "appendfsync"
102) "everysec"
103) "save"
104) "3600 1 300 100 60 10000"
105) "loglevel"
106) "notice"
107) "client-output-buffer-limit"
108) "normal 0 0 0 slave 268435456 67108864 60 pubsub 33554432 8388608 60"
109) "unixsocketperm"
110) "0"
111) "slaveof"
112) ""
113) "notify-keyspace-events"
114) ""
115) "bind"
116) ""

แก้ไขการตั้งค่าคอนฟิก

คุณสามารถแก้ไขไฟล์ redis.confหรือใช้คำสั่งปรับแต่งมาเพื่อปรับเปลี่ยนการตั้งค่า

ไวยากรณ์

กำหนดค่าคำสั่ง SET ไวยากรณ์พื้นฐาน:

redis 127.0.0.1:6379> CONFIG SET CONFIG_SETTING_NAME NEW_CONFIG_VALUE

ตัวอย่าง

redis 127.0.0.1:6379> CONFIG SET loglevel "notice"
OK
redis 127.0.0.1:6379> CONFIG GET loglevel

1) "loglevel"
2) "notice"

พารามิเตอร์คำอธิบาย

รายการค่า redis.conf อธิบายไว้ด้านล่าง:

1. Redis เริ่มต้นไม่ได้ทำงานในโหมดภูตคุณสามารถปรับเปลี่ยนการตั้งค่ารายการที่ใช้เปิดใช้งานใช่ภูต

daemonize ไม่มี

2. เมื่อ Redis เมื่อทำงานในโหมดภูตเริ่มต้น Redis จะเขียนไฟล์ pid /var/run/redis.pid คุณสามารถระบุ pidfile

pidfile /var/run/redis.pid

3. ระบุพอร์ตจอภาพ Redis พอร์ตเริ่มต้นของ 6379, ผู้เขียนในโพสต์บล็อกของตัวเองอธิบายว่าทำไมทางเลือกของ 6379 เป็นพอร์ตเริ่มต้นเป็น 6379 ใน MERZ โทรศัพท์ปุ่มกดตัวเลขที่ตรงกันและ MERZ นำมาจากชื่อของสาวอิตาลี Alessia Merz

พอร์ต 6379

4. ที่อยู่โฮสต์ที่มีผลผูกพัน

ผูก 127.0.0.1

5. เมื่อลูกค้าไม่ได้ใช้งานเป็นเวลานานหลังจากปิดการเชื่อมต่อถ้าคุณระบุศูนย์ปิดการใช้งานฟังก์ชั่น

หมดเวลา 300

6. ระบุระดับการเข้าสู่ระบบ Redis สนับสนุนรวมเป็นสี่ระดับคือการแก้ปัญหาอย่างละเอียดในการแจ้งเตือนเริ่มต้นคือ verbose

LogLevel ละเอียด

7. โหมดการบันทึกค่าเริ่มต้นคือการออกมาตรฐานถ้าคุณกำหนดค่า Redis ให้ทำงานในโหมดภูต แต่ตอนนี้ก็ยังมีการกำหนดค่าสำหรับการเข้าสู่โหมดการส่งออกมาตรฐานเข้าสู่ระบบจะถูกส่งไปยัง / dev / null

    stdout logfile

8. กำหนดจำนวนของฐานข้อมูลฐานข้อมูลเริ่มต้นคือ 0, คุณสามารถใช้คำสั่งเลือก <dbid> การเชื่อมต่อที่ระบุ ID ฐานข้อมูล

ฐานข้อมูล 16

9. ระบุนานแค่ไหนกี่ครั้งการดำเนินการปรับปรุงข้อมูลที่จะได้รับการประสานไปยังแฟ้มข้อมูลคุณสามารถพบจำนวนของเงื่อนไข

บันทึก <วินาที> <เปลี่ยนแปลง>

Redis แฟ้มการกำหนดค่าเริ่มต้นให้สามเงื่อนไข:

บันทึก 900 1

ประหยัด 300 10

ประหยัด 60 10000

ตามลำดับมีการเปลี่ยนแปลง 900 วินาที (15 นาที) 300 วินาที (5 นาที) มี 10 การเปลี่ยนแปลงและมี 10 000 เปลี่ยนใน 60 วินาที

10. การบีบอัดเมื่อมีการเก็บข้อมูลไปยังฐานข้อมูลท้องถิ่นเริ่มต้นคือใช่ Redis ใช้การบีบอัด LZF ถ้า CPU ในการสั่งซื้อเพื่อประหยัดเวลาคุณสามารถปิดตัวเลือกนี้ แต่จะทำให้ไฟล์ฐานข้อมูลขนาดใหญ่กลายเป็น

rdbcompression ใช่

11. ระบุชื่อแฟ้มของฐานข้อมูลท้องถิ่น dump.rdb ค่าเริ่มต้น

dbfilename dump.rdb

12. ระบุไดเรกทอรีการจัดเก็บฐานข้อมูลท้องถิ่น

ผบ ./

13. ตั้งค่าเมื่อหน่วยบริการสลาฟที่อยู่ IP ตั้งให้บริการหลักและพอร์ตเมื่อ Redis เริ่มต้นมันโดยอัตโนมัติจะประสานข้อมูลจากต้นแบบ

slaveof <masterip> <masterport>

14. เมื่อการให้บริการหลักที่มีการป้องกันด้วยรหัสผ่านบริการสลาฟรหัสผ่านหลักเชื่อมต่อ

masterauth <ต้นแบบรหัสผ่าน>

รหัสผ่านการเชื่อมต่อ 15. ชุด Redis ถ้าคุณกำหนดค่ารหัสผ่านการเชื่อมต่อที่ลูกค้าต้องการที่จะให้รหัสผ่านเมื่อเชื่อมต่อผ่าน Redis AUTH <รหัสผ่าน> คำสั่งปิดโดยปริยาย

requirepass foobared

16. ตั้งเวลาเดียวกันจำนวนสูงสุดของการเชื่อมต่อลูกค้าวงเงินเริ่มต้นจำนวนสูงสุดของการเชื่อมต่อลูกค้าไฟล์อธิบาย Redis Redis สามารถเปิดได้พร้อมกันสำหรับกระบวนการสามารถเปิดได้ถ้าชุด MaxClients 0 บ่งชี้ไม่มีข้อ จำกัด เมื่อจำนวนของการเชื่อมต่อลูกค้าถึงขีด จำกัด Redis จะปิดการเชื่อมต่อใหม่ให้กับลูกค้าส่งกลับจำนวนสูงสุดของลูกค้าที่มาถึงข้อผิดพลาด

MaxClients 128

17. ระบุ Redis จำกัด หน่วยความจำสูงสุด Redis จะถูกโหลดข้อมูลในหน่วยความจำเริ่มต้นหลังจากที่หน่วยความจำสูงสุด Redis แรกจะพยายามที่จะล้างคีย์หมดอายุแล้วหรือกำลังจะหมดอายุเมื่อวิธีนี้ใช้ได้ผลยังคงเข้าถึงหน่วยความจำสูงสุด การตั้งค่าจะไม่เขียนงาน แต่ยังคงสามารถอ่าน หน่วยความจำ Redis กลไก VM ใหม่ที่สำคัญจะถูกเก็บไว้ราคาจะถูกเก็บไว้ในพื้นที่แลกเปลี่ยน

maxmemory <ไบต์>

18. ระบุว่าหลังจากที่แต่ละการเข้าสู่ระบบการดำเนินการปรับปรุง, Redis เริ่มต้นคือไม่ตรงกันในการเขียนข้อมูลไปยังดิสก์ถ้าไม่เปิดก็อาจส่งผลให้ข้อมูลในช่วงเวลาที่หายไปในช่วงที่ไฟฟ้าดับ เพราะตัวเอง Redis ประสานไฟล์ข้อมูลที่ตรงกันโดยด้านบนบันทึกเงื่อนไขเพื่อให้ข้อมูลบางอย่างในช่วงเวลาที่มีอยู่เฉพาะในหน่วยความจำ ค่าเริ่มต้นคือไม่มี

appendonly ไม่มี

19. ระบุชื่อแฟ้มบันทึกการปรับปรุงเริ่มต้นคือ appendonly.aof

appendfilename appendonly.aof

20. ระบุเกณฑ์บันทึกการปรับปรุงที่มีสามค่าที่เป็นไปได้:
No: บ่งชี้ระบบปฏิบัติการและข้อมูลอื่น ๆ ที่ซิงค์กับดิสก์แคช (เร็ว)
เสมอหลังจากการดำเนินการทุกบ่งชี้ว่าการปรับปรุงด้วยตนเองโทร fsync () เขียนข้อมูลไปยังดิสก์ (ช้ากว่าการรักษาความปลอดภัย)
everysec: หมายถึงการซิงโครวินาที (ประนีประนอมค่าเริ่มต้น)

appendfsync everysec

21. ระบุว่ากลไกหน่วยความจำเสมือนถูกเปิดใช้งานเริ่มต้นคือไม่ดูสั้นกลไกเพจ VM ในการจัดเก็บข้อมูลโดยการ Redis จะไปเยี่ยมชมข้อมูลแลกเปลี่ยน C13 น้อยหน้าไปยังดิสก์การเข้าถึงดิสก์หลาย ๆ หน้าโดยอัตโนมัติ สลับออกหน่วยความจำ (ในบทความภายหลังฉันอย่างจะวิเคราะห์กลไก Redis VM)

VM ที่เปิดใช้งานไม่มี

22. เส้นทางแฟ้มหน่วยความจำเสมือน /tmp/redis.swap ค่าเริ่มต้นไม่สามารถใช้ร่วมหลายกรณีของ Redis

/tmp/redis.swap VM-swap ไฟล์

23. ในมากกว่าข้อมูล VM-Max-หน่วยความจำทั้งหมดลงในหน่วยความจำเสมือนโดยไม่คำนึงถึงการตั้งค่า VM-Max-หน่วยความจำว่าขนาดเล็กข้อมูลดัชนีทั้งหมดจะถูกเก็บไว้ในหน่วยความจำ (ข้อมูลดัชนี Redis เป็นคีย์), ที่อยู่, เมื่อ VM -max หน่วยความจำตั้งค่าเป็น 0 เมื่อค่าที่เป็นจริงทั้งหมดที่มีอยู่ในดิสก์ ค่าเริ่มต้นคือ 0

VM-Max-หน่วยความจำ 0

แลกเปลี่ยนไฟล์ 24. Redis เป็นจำนวนมากหน้าวัตถุสามารถเก็บไว้ในหลายหน้าข้างต้น แต่ไม่สามารถใช้ร่วมกันโดยวัตถุหลายบนหน้าเว็บ VM-หน้าขนาดคือการจะขึ้นอยู่กับขนาดของชุดข้อมูลที่เก็บไว้ผู้เขียน หากคุณจัดเก็บจำนวนมากของคำแนะนำสำหรับวัตถุขนาดเล็กขนาดหน้าการตั้งค่าโดยเฉพาะอย่างยิ่งที่จะ 32 หรือ 64bytes ถ้าวัตถุขนาดใหญ่จำนวนมากจัดเก็บคุณสามารถใช้หน้าขนาดใหญ่หากคุณไม่แน่ใจให้ใช้ค่าเริ่มต้น

VM-หน้าขนาด 32

25. จำนวนหน้าแลกเปลี่ยนไฟล์ตั้งแต่ตารางหน้า (หน้าใช้งานหรือเป็นตัวแทนโดยใช้บิตแมป) ถูกวางไว้ในหน่วยความจำบนดิสก์ ,, ทุกแปดหน้า 1byte จะใช้หน่วยความจำ

VM-หน้า 134217728

26. กำหนดจำนวนของหัวข้อในการเข้าถึงแลกเปลี่ยนไฟล์ที่ดีที่สุดคือไม่เกินจำนวนของเครื่องหลักถ้าตั้งค่าเป็น 0 แล้วการดำเนินการทั้งหมดในการแลกเปลี่ยนไฟล์เป็นแบบอนุกรมก็อาจทำให้เกิดความล่าช้าค่อนข้างยาว ค่าเริ่มต้นคือ 4

VM-Max-4 หัวข้อ

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

glueoutputbuf ใช่

28. ระบุเมื่อมากกว่าจำนวนหนึ่งหรือองค์ประกอบที่ใหญ่ที่สุดเกินกว่าค่าที่สำคัญโดยใช้วิธีกัญชาพิเศษ

กัญชา-Max-zipmap รายการ 64

กัญชา-Max-zipmap มูลค่า 512

29. ระบุว่าจะรีเซ็ตกัญชาเปิดใช้งานถูกเปิดใช้งานโดยค่าเริ่มต้น (อธิบายเฉพาะต่อมาเมื่อขั้นตอนวิธีการที่อธิบายคร่ำเครียด Redis)

activerehashing ใช่

30. ระบุว่ามีแฟ้มการกำหนดค่าอื่น ๆ ที่คุณสามารถใช้ไฟล์ตั้งค่าเดียวกันระหว่างกรณี Redis หลายในพื้นที่เดียวกันในขณะที่แต่ละกรณีมีรายละเอียดเฉพาะของตัวเอง

รวม /path/to/local.conf