X-Git-Url: https://git.saurik.com/redis.git/blobdiff_plain/cb9b35c8cafc703ea5f2754b2961c9a3268c35d5..b83e95830f45eb5e3b4e7c0a997d611f75f758b8:/redis.conf diff --git a/redis.conf b/redis.conf index 150eb690..71d6f70b 100644 --- a/redis.conf +++ b/redis.conf @@ -21,6 +21,7 @@ daemonize no pidfile /var/run/redis.pid # Accept connections on the specified port, default is 6379. +# If port 0 is specified Redis will not listen on a TCP socket. port 6379 # If you want you can bind a single interface, if the bind option is not @@ -33,6 +34,7 @@ port 6379 # on a unix socket when not specified. # # unixsocket /tmp/redis.sock +# unixsocketperm 755 # Close the connection after a client is idle for N seconds (0 to disable) timeout 300 @@ -291,31 +293,82 @@ appendfsync everysec # "no" that is the safest pick from the point of view of durability. no-appendfsync-on-rewrite no -#################################### DISK STORE ############################### +# Automatic rewrite of the append only file. +# Redis is able to automatically rewrite the log file implicitly calling +# BGREWRITEAOF when the AOF log size will growth by the specified percentage. +# +# This is how it works: Redis remembers the size of the AOF file after the +# latest rewrite (or if no rewrite happened since the restart, the size of +# the AOF at startup is used). +# +# This base size is compared to the current size. If the current size is +# bigger than the specified percentage, the rewrite is triggered. Also +# you need to specify a minimal size for the AOF file to be rewritten, this +# is useful to avoid rewriting the AOF file even if the percentage increase +# is reached but it is still pretty small. +# +# Specify a precentage of zero in order to disable the automatic AOF +# rewrite feature. + +auto-aof-rewrite-percentage 100 +auto-aof-rewrite-min-size 64mb -# When disk store is active Redis works as an on-disk database, where memory -# is only used as a object cache. +################################ LUA SCRIPTING ############################### + +# Max execution time of a Lua script in milliseconds. +# +# If the maximum execution time is reached Redis will log that a script is +# still in execution after the maxium allowed time and will start to +# reply to queries with an error. # -# This mode is good for datasets that are bigger than memory, and in general -# when you want to trade speed for: +# The SHUTDOWN command will be available to shutdown the server without +# violating the database consistency if the script entered an infinite loop. # -# - less memory used -# - immediate server restart -# - per key durability, without need for backgrond savig +# Set it to 0 or a negative value for unlimited execution without warnings. +lua-time-limit 5000 + +################################ REDIS CLUSTER ############################### # -# On the other hand, with disk store enabled MULTI/EXEC are no longer -# transactional from the point of view of the persistence on disk, that is, -# Redis transactions will still guarantee that commands are either processed -# all or nothing, but there is no guarantee that all the keys are flushed -# on disk in an atomic way. +# Normal Redis instances can't be part of a Redis Cluster, only nodes that are +# started as cluster nodes can. In order to start a Redis instance as a +# cluster node enable the cluster support uncommenting the following: # -# Of course with disk store enabled Redis is not as fast as it is when -# working with just the memory back end. +# cluster-enabled yes -diskstore-enabled no -diskstore-path redis.ds -cache-max-memory 0 -cache-flush-delay 0 +# Every cluster node has a cluster configuration file. This file is not +# intended to be edited by hand. It is created and updated by Redis nodes. +# Every Redis Cluster node requires a different cluster configuration file. +# Make sure that instances running in the same system does not have +# overlapping cluster configuration file names. +# +# cluster-config-file nodes-6379.conf + +# In order to setup your cluster make sure to read the documentation +# available at http://redis.io web site. + +################################## SLOW LOG ################################### + +# The Redis Slow Log is a system to log queries that exceeded a specified +# execution time. The execution time does not include the I/O operations +# like talking with the client, sending the reply and so forth, +# but just the time needed to actually execute the command (this is the only +# stage of command execution where the thread is blocked and can not serve +# other requests in the meantime). +# +# You can configure the slow log with two parameters: one tells Redis +# what is the execution time, in microseconds, to exceed in order for the +# command to get logged, and the other parameter is the length of the +# slow log. When a new command is logged the oldest one is removed from the +# queue of logged commands. + +# The following time is expressed in microseconds, so 1000000 is equivalent +# to one second. Note that a negative number disables the slow log, while +# a value of zero forces the logging of every command. +slowlog-log-slower-than 10000 + +# There is no limit to this length. Just be aware that it will consume memory. +# You can reclaim memory used by the slow log with SLOWLOG RESET. +slowlog-max-len 1024 ############################### ADVANCED CONFIG ############################### @@ -323,8 +376,8 @@ cache-flush-delay 0 # have at max a given numer of elements, and the biggest element does not # exceed a given threshold. You can configure this limits with the following # configuration directives. -hash-max-zipmap-entries 64 -hash-max-zipmap-value 512 +hash-max-zipmap-entries 512 +hash-max-zipmap-value 64 # Similarly to hashes, small lists are also encoded in a special way in order # to save a lot of space. The special representation is only used when @@ -339,6 +392,12 @@ list-max-ziplist-value 64 # set in order to use this special memory saving encoding. set-max-intset-entries 512 +# Similarly to hashes and lists, sorted sets are also specially encoded in +# order to save a lot of space. This encoding is only used when the length and +# elements of a sorted set are below the following limits: +zset-max-ziplist-entries 128 +zset-max-ziplist-value 64 + # Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in # order to help rehashing the main Redis hash table (the one mapping top-level # keys to values). The hash table implementation redis uses (see dict.c)