xref: /redis-3.2.3/redis.conf (revision ace86cfa)
1# Redis configuration file example
2
3# Note on units: when memory size is needed, it is possible to specify
4# it in the usual form of 1k 5GB 4M and so forth:
5#
6# 1k => 1000 bytes
7# 1kb => 1024 bytes
8# 1m => 1000000 bytes
9# 1mb => 1024*1024 bytes
10# 1g => 1000000000 bytes
11# 1gb => 1024*1024*1024 bytes
12#
13# units are case insensitive so 1GB 1Gb 1gB are all the same.
14
15# By default Redis does not run as a daemon. Use 'yes' if you need it.
16# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
17daemonize no
18
19# When running daemonized, Redis writes a pid file in /var/run/redis.pid by
20# default. You can specify a custom pid file location here.
21pidfile /var/run/redis.pid
22
23# Accept connections on the specified port, default is 6379.
24# If port 0 is specified Redis will not listen on a TCP socket.
25port 6379
26
27# If you want you can bind a single interface, if the bind option is not
28# specified all the interfaces will listen for incoming connections.
29#
30# bind 127.0.0.1
31
32# Specify the path for the unix socket that will be used to listen for
33# incoming connections. There is no default, so Redis will not listen
34# on a unix socket when not specified.
35#
36# unixsocket /tmp/redis.sock
37# unixsocketperm 755
38
39# Close the connection after a client is idle for N seconds (0 to disable)
40timeout 0
41
42# TCP keepalive.
43#
44# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
45# of communication. This is useful for two reasons:
46#
47# 1) Detect dead peers.
48# 2) Take the connection alive from the point of view of network
49#    equipment in the middle.
50#
51# On Linux, the specified value (in seconds) is the period used to send ACKs.
52# Note that to close the connection the double of the time is needed.
53# On other kernels the period depends on the kernel configuration.
54#
55# A reasonable value for this option is 60 seconds.
56tcp-keepalive 0
57
58# Specify the server verbosity level.
59# This can be one of:
60# debug (a lot of information, useful for development/testing)
61# verbose (many rarely useful info, but not a mess like the debug level)
62# notice (moderately verbose, what you want in production probably)
63# warning (only very important / critical messages are logged)
64loglevel notice
65
66# Specify the log file name. Also 'stdout' can be used to force
67# Redis to log on the standard output. Note that if you use standard
68# output for logging but daemonize, logs will be sent to /dev/null
69logfile stdout
70
71# To enable logging to the system logger, just set 'syslog-enabled' to yes,
72# and optionally update the other syslog parameters to suit your needs.
73# syslog-enabled no
74
75# Specify the syslog identity.
76# syslog-ident redis
77
78# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
79# syslog-facility local0
80
81# Set the number of databases. The default database is DB 0, you can select
82# a different one on a per-connection basis using SELECT <dbid> where
83# dbid is a number between 0 and 'databases'-1
84databases 16
85
86################################ SNAPSHOTTING  #################################
87#
88# Save the DB on disk:
89#
90#   save <seconds> <changes>
91#
92#   Will save the DB if both the given number of seconds and the given
93#   number of write operations against the DB occurred.
94#
95#   In the example below the behaviour will be to save:
96#   after 900 sec (15 min) if at least 1 key changed
97#   after 300 sec (5 min) if at least 10 keys changed
98#   after 60 sec if at least 10000 keys changed
99#
100#   Note: you can disable saving at all commenting all the "save" lines.
101#
102#   It is also possible to remove all the previously configured save
103#   points by adding a save directive with a single empty string argument
104#   like in the following example:
105#
106#   save ""
107
108save 900 1
109save 300 10
110save 60 10000
111
112# By default Redis will stop accepting writes if RDB snapshots are enabled
113# (at least one save point) and the latest background save failed.
114# This will make the user aware (in an hard way) that data is not persisting
115# on disk properly, otherwise chances are that no one will notice and some
116# distater will happen.
117#
118# If the background saving process will start working again Redis will
119# automatically allow writes again.
120#
121# However if you have setup your proper monitoring of the Redis server
122# and persistence, you may want to disable this feature so that Redis will
123# continue to work as usually even if there are problems with disk,
124# permissions, and so forth.
125stop-writes-on-bgsave-error yes
126
127# Compress string objects using LZF when dump .rdb databases?
128# For default that's set to 'yes' as it's almost always a win.
129# If you want to save some CPU in the saving child set it to 'no' but
130# the dataset will likely be bigger if you have compressible values or keys.
131rdbcompression yes
132
133# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
134# This makes the format more resistant to corruption but there is a performance
135# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
136# for maximum performances.
137#
138# RDB files created with checksum disabled have a checksum of zero that will
139# tell the loading code to skip the check.
140rdbchecksum yes
141
142# The filename where to dump the DB
143dbfilename dump.rdb
144
145# The working directory.
146#
147# The DB will be written inside this directory, with the filename specified
148# above using the 'dbfilename' configuration directive.
149#
150# The Append Only File will also be created inside this directory.
151#
152# Note that you must specify a directory here, not a file name.
153dir ./
154
155################################# REPLICATION #################################
156
157# Master-Slave replication. Use slaveof to make a Redis instance a copy of
158# another Redis server. Note that the configuration is local to the slave
159# so for example it is possible to configure the slave to save the DB with a
160# different interval, or to listen to another port, and so on.
161#
162# slaveof <masterip> <masterport>
163
164# If the master is password protected (using the "requirepass" configuration
165# directive below) it is possible to tell the slave to authenticate before
166# starting the replication synchronization process, otherwise the master will
167# refuse the slave request.
168#
169# masterauth <master-password>
170
171# When a slave loses its connection with the master, or when the replication
172# is still in progress, the slave can act in two different ways:
173#
174# 1) if slave-serve-stale-data is set to 'yes' (the default) the slave will
175#    still reply to client requests, possibly with out of date data, or the
176#    data set may just be empty if this is the first synchronization.
177#
178# 2) if slave-serve-stale-data is set to 'no' the slave will reply with
179#    an error "SYNC with master in progress" to all the kind of commands
180#    but to INFO and SLAVEOF.
181#
182slave-serve-stale-data yes
183
184# You can configure a slave instance to accept writes or not. Writing against
185# a slave instance may be useful to store some ephemeral data (because data
186# written on a slave will be easily deleted after resync with the master) but
187# may also cause problems if clients are writing to it because of a
188# misconfiguration.
189#
190# Since Redis 2.6 by default slaves are read-only.
191#
192# Note: read only slaves are not designed to be exposed to untrusted clients
193# on the internet. It's just a protection layer against misuse of the instance.
194# Still a read only slave exports by default all the administrative commands
195# such as CONFIG, DEBUG, and so forth. To a limited extend you can improve
196# security of read only slaves using 'rename-command' to shadow all the
197# administrative / dangerous commands.
198slave-read-only yes
199
200# Slaves send PINGs to server in a predefined interval. It's possible to change
201# this interval with the repl_ping_slave_period option. The default value is 10
202# seconds.
203#
204# repl-ping-slave-period 10
205
206# The following option sets a timeout for both Bulk transfer I/O timeout and
207# master data or ping response timeout. The default value is 60 seconds.
208#
209# It is important to make sure that this value is greater than the value
210# specified for repl-ping-slave-period otherwise a timeout will be detected
211# every time there is low traffic between the master and the slave.
212#
213# repl-timeout 60
214
215# Disable TCP_NODELAY on the slave socket after SYNC?
216#
217# If you select "yes" Redis will use a smaller number of TCP packets and
218# less bandwidth to send data to slaves. But this can add a delay for
219# the data to appear on the slave side, up to 40 milliseconds with
220# Linux kernels using a default configuration.
221#
222# If you select "no" the delay for data to appear on the slave side will
223# be reduced but more bandwidth will be used for replication.
224#
225# By default we optimize for low latency, but in very high traffic conditions
226# or when the master and slaves are many hops away, turning this to "yes" may
227# be a good idea.
228repl-disable-tcp-nodelay no
229
230# Set the replication backlog size. The backlog is a buffer that accumulates
231# slave data when slaves are disconnected for some time, so that when a slave
232# wants to reconnect again, often a full resync is not needed, but a partial
233# resync is enough, just passing the portion of data the slave missed while
234# disconnected.
235#
236# The biggest the replication backlog, the longer the time the slave can be
237# disconnected and later be able to perform a partial resynchronization.
238#
239# The backlog is only allocated once there is at least a slave connected.
240#
241# repl-backlog-size 1mb
242
243# After a master has no longer connected slaves for some time, the backlog
244# will be freed. The following option configures the amount of seconds that
245# need to elapse, starting from the time the last slave disconnected, for
246# the backlog buffer to be freed.
247#
248# A value of 0 means to never release the backlog.
249#
250# repl-backlog-ttl 3600
251
252# The slave priority is an integer number published by Redis in the INFO output.
253# It is used by Redis Sentinel in order to select a slave to promote into a
254# master if the master is no longer working correctly.
255#
256# A slave with a low priority number is considered better for promotion, so
257# for instance if there are three slaves with priority 10, 100, 25 Sentinel will
258# pick the one wtih priority 10, that is the lowest.
259#
260# However a special priority of 0 marks the slave as not able to perform the
261# role of master, so a slave with priority of 0 will never be selected by
262# Redis Sentinel for promotion.
263#
264# By default the priority is 100.
265slave-priority 100
266
267################################## SECURITY ###################################
268
269# Require clients to issue AUTH <PASSWORD> before processing any other
270# commands.  This might be useful in environments in which you do not trust
271# others with access to the host running redis-server.
272#
273# This should stay commented out for backward compatibility and because most
274# people do not need auth (e.g. they run their own servers).
275#
276# Warning: since Redis is pretty fast an outside user can try up to
277# 150k passwords per second against a good box. This means that you should
278# use a very strong password otherwise it will be very easy to break.
279#
280# requirepass foobared
281
282# Command renaming.
283#
284# It is possible to change the name of dangerous commands in a shared
285# environment. For instance the CONFIG command may be renamed into something
286# hard to guess so that it will still be available for internal-use tools
287# but not available for general clients.
288#
289# Example:
290#
291# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
292#
293# It is also possible to completely kill a command by renaming it into
294# an empty string:
295#
296# rename-command CONFIG ""
297#
298# Please note that changing the name of commands that are logged into the
299# AOF file or transmitted to slaves may cause problems.
300
301################################### LIMITS ####################################
302
303# Set the max number of connected clients at the same time. By default
304# this limit is set to 10000 clients, however if the Redis server is not
305# able to configure the process file limit to allow for the specified limit
306# the max number of allowed clients is set to the current file limit
307# minus 32 (as Redis reserves a few file descriptors for internal uses).
308#
309# Once the limit is reached Redis will close all the new connections sending
310# an error 'max number of clients reached'.
311#
312# maxclients 10000
313
314# Don't use more memory than the specified amount of bytes.
315# When the memory limit is reached Redis will try to remove keys
316# accordingly to the eviction policy selected (see maxmemmory-policy).
317#
318# If Redis can't remove keys according to the policy, or if the policy is
319# set to 'noeviction', Redis will start to reply with errors to commands
320# that would use more memory, like SET, LPUSH, and so on, and will continue
321# to reply to read-only commands like GET.
322#
323# This option is usually useful when using Redis as an LRU cache, or to set
324# an hard memory limit for an instance (using the 'noeviction' policy).
325#
326# WARNING: If you have slaves attached to an instance with maxmemory on,
327# the size of the output buffers needed to feed the slaves are subtracted
328# from the used memory count, so that network problems / resyncs will
329# not trigger a loop where keys are evicted, and in turn the output
330# buffer of slaves is full with DELs of keys evicted triggering the deletion
331# of more keys, and so forth until the database is completely emptied.
332#
333# In short... if you have slaves attached it is suggested that you set a lower
334# limit for maxmemory so that there is some free RAM on the system for slave
335# output buffers (but this is not needed if the policy is 'noeviction').
336#
337# maxmemory <bytes>
338
339# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
340# is reached. You can select among five behaviors:
341#
342# volatile-lru -> remove the key with an expire set using an LRU algorithm
343# allkeys-lru -> remove any key accordingly to the LRU algorithm
344# volatile-random -> remove a random key with an expire set
345# allkeys-random -> remove a random key, any key
346# volatile-ttl -> remove the key with the nearest expire time (minor TTL)
347# noeviction -> don't expire at all, just return an error on write operations
348#
349# Note: with any of the above policies, Redis will return an error on write
350#       operations, when there are not suitable keys for eviction.
351#
352#       At the date of writing this commands are: set setnx setex append
353#       incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
354#       sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
355#       zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
356#       getset mset msetnx exec sort
357#
358# The default is:
359#
360# maxmemory-policy volatile-lru
361
362# LRU and minimal TTL algorithms are not precise algorithms but approximated
363# algorithms (in order to save memory), so you can select as well the sample
364# size to check. For instance for default Redis will check three keys and
365# pick the one that was used less recently, you can change the sample size
366# using the following configuration directive.
367#
368# maxmemory-samples 3
369
370############################## APPEND ONLY MODE ###############################
371
372# By default Redis asynchronously dumps the dataset on disk. This mode is
373# good enough in many applications, but an issue with the Redis process or
374# a power outage may result into a few minutes of writes lost (depending on
375# the configured save points).
376#
377# The Append Only File is an alternative persistence mode that provides
378# much better durability. For instance using the default data fsync policy
379# (see later in the config file) Redis can lose just one second of writes in a
380# dramatic event like a server power outage, or a single write if something
381# wrong with the Redis process itself happens, but the operating system is
382# still running correctly.
383#
384# AOF and RDB persistence can be enabled at the same time without problems.
385# If the AOF is enabled on startup Redis will load the AOF, that is the file
386# with the better durability guarantees.
387#
388# Please check http://redis.io/topics/persistence for more information.
389
390appendonly no
391
392# The name of the append only file (default: "appendonly.aof")
393# appendfilename appendonly.aof
394
395# The fsync() call tells the Operating System to actually write data on disk
396# instead to wait for more data in the output buffer. Some OS will really flush
397# data on disk, some other OS will just try to do it ASAP.
398#
399# Redis supports three different modes:
400#
401# no: don't fsync, just let the OS flush the data when it wants. Faster.
402# always: fsync after every write to the append only log . Slow, Safest.
403# everysec: fsync only one time every second. Compromise.
404#
405# The default is "everysec", as that's usually the right compromise between
406# speed and data safety. It's up to you to understand if you can relax this to
407# "no" that will let the operating system flush the output buffer when
408# it wants, for better performances (but if you can live with the idea of
409# some data loss consider the default persistence mode that's snapshotting),
410# or on the contrary, use "always" that's very slow but a bit safer than
411# everysec.
412#
413# More details please check the following article:
414# http://antirez.com/post/redis-persistence-demystified.html
415#
416# If unsure, use "everysec".
417
418# appendfsync always
419appendfsync everysec
420# appendfsync no
421
422# When the AOF fsync policy is set to always or everysec, and a background
423# saving process (a background save or AOF log background rewriting) is
424# performing a lot of I/O against the disk, in some Linux configurations
425# Redis may block too long on the fsync() call. Note that there is no fix for
426# this currently, as even performing fsync in a different thread will block
427# our synchronous write(2) call.
428#
429# In order to mitigate this problem it's possible to use the following option
430# that will prevent fsync() from being called in the main process while a
431# BGSAVE or BGREWRITEAOF is in progress.
432#
433# This means that while another child is saving, the durability of Redis is
434# the same as "appendfsync none". In practical terms, this means that it is
435# possible to lose up to 30 seconds of log in the worst scenario (with the
436# default Linux settings).
437#
438# If you have latency problems turn this to "yes". Otherwise leave it as
439# "no" that is the safest pick from the point of view of durability.
440no-appendfsync-on-rewrite no
441
442# Automatic rewrite of the append only file.
443# Redis is able to automatically rewrite the log file implicitly calling
444# BGREWRITEAOF when the AOF log size grows by the specified percentage.
445#
446# This is how it works: Redis remembers the size of the AOF file after the
447# latest rewrite (if no rewrite has happened since the restart, the size of
448# the AOF at startup is used).
449#
450# This base size is compared to the current size. If the current size is
451# bigger than the specified percentage, the rewrite is triggered. Also
452# you need to specify a minimal size for the AOF file to be rewritten, this
453# is useful to avoid rewriting the AOF file even if the percentage increase
454# is reached but it is still pretty small.
455#
456# Specify a percentage of zero in order to disable the automatic AOF
457# rewrite feature.
458
459auto-aof-rewrite-percentage 100
460auto-aof-rewrite-min-size 64mb
461
462################################ LUA SCRIPTING  ###############################
463
464# Max execution time of a Lua script in milliseconds.
465#
466# If the maximum execution time is reached Redis will log that a script is
467# still in execution after the maximum allowed time and will start to
468# reply to queries with an error.
469#
470# When a long running script exceed the maximum execution time only the
471# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
472# used to stop a script that did not yet called write commands. The second
473# is the only way to shut down the server in the case a write commands was
474# already issue by the script but the user don't want to wait for the natural
475# termination of the script.
476#
477# Set it to 0 or a negative value for unlimited execution without warnings.
478lua-time-limit 5000
479
480################################ REDIS CLUSTER  ###############################
481#
482# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
483# started as cluster nodes can. In order to start a Redis instance as a
484# cluster node enable the cluster support uncommenting the following:
485#
486# cluster-enabled yes
487
488# Every cluster node has a cluster configuration file. This file is not
489# intended to be edited by hand. It is created and updated by Redis nodes.
490# Every Redis Cluster node requires a different cluster configuration file.
491# Make sure that instances running in the same system does not have
492# overlapping cluster configuration file names.
493#
494# cluster-config-file nodes-6379.conf
495
496# Cluster node timeout is the amount of seconds a node must be unreachable
497# for it to be considered in failure state.
498# Most other internal time limits are multiplicators of the node timeout.
499#
500# cluster-node-timeout 15
501
502# In order to setup your cluster make sure to read the documentation
503# available at http://redis.io web site.
504
505################################## SLOW LOG ###################################
506
507# The Redis Slow Log is a system to log queries that exceeded a specified
508# execution time. The execution time does not include the I/O operations
509# like talking with the client, sending the reply and so forth,
510# but just the time needed to actually execute the command (this is the only
511# stage of command execution where the thread is blocked and can not serve
512# other requests in the meantime).
513#
514# You can configure the slow log with two parameters: one tells Redis
515# what is the execution time, in microseconds, to exceed in order for the
516# command to get logged, and the other parameter is the length of the
517# slow log. When a new command is logged the oldest one is removed from the
518# queue of logged commands.
519
520# The following time is expressed in microseconds, so 1000000 is equivalent
521# to one second. Note that a negative number disables the slow log, while
522# a value of zero forces the logging of every command.
523slowlog-log-slower-than 10000
524
525# There is no limit to this length. Just be aware that it will consume memory.
526# You can reclaim memory used by the slow log with SLOWLOG RESET.
527slowlog-max-len 128
528
529############################# Event notification ##############################
530
531# Redis can notify Pub/Sub clients about events happening in the key space.
532# This feature is documented at http://redis.io/topics/keyspace-events
533#
534# For instance if keyspace events notification is enabled, and a client
535# performs a DEL operation on key "foo" stored in the Database 0, two
536# messages will be published via Pub/Sub:
537#
538# PUBLISH __keyspace@0__:foo del
539# PUBLISH __keyevent@0__:del foo
540#
541# It is possible to select the events that Redis will notify among a set
542# of classes. Every class is identified by a single character:
543#
544#  K     Keyspace events, published with __keyspace@<db>__ prefix.
545#  E     Keyevent events, published with __keyevent@<db>__ prefix.
546#  g     Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
547#  $     String commands
548#  l     List commands
549#  s     Set commands
550#  h     Hash commands
551#  z     Sorted set commands
552#  x     Expired events (events generated every time a key expires)
553#  e     Evicted events (events generated when a key is evicted for maxmemory)
554#  A     Alias for g$lshzxe, so that the "AKE" string means all the events.
555#
556#  The "notify-keyspace-events" takes as argument a string that is composed
557#  by zero or multiple characters. The empty string means that notifications
558#  are disabled at all.
559#
560#  Example: to enable list and generic events, from the point of view of the
561#           event name, use:
562#
563#  notify-keyspace-events Elg
564#
565#  Example 2: to get the stream of the expired keys subscribing to channel
566#             name __keyevent@0__:expired use:
567#
568#  notify-keyspace-events Ex
569#
570#  By default all notifications are disabled because most users don't need
571#  this feature and the feature has some overhead. Note that if you don't
572#  specify at least one of K or E, no events will be delivered.
573notify-keyspace-events ""
574
575############################### ADVANCED CONFIG ###############################
576
577# Hashes are encoded using a memory efficient data structure when they have a
578# small number of entries, and the biggest entry does not exceed a given
579# threshold. These thresholds can be configured using the following directives.
580hash-max-ziplist-entries 512
581hash-max-ziplist-value 64
582
583# Similarly to hashes, small lists are also encoded in a special way in order
584# to save a lot of space. The special representation is only used when
585# you are under the following limits:
586list-max-ziplist-entries 512
587list-max-ziplist-value 64
588
589# Sets have a special encoding in just one case: when a set is composed
590# of just strings that happens to be integers in radix 10 in the range
591# of 64 bit signed integers.
592# The following configuration setting sets the limit in the size of the
593# set in order to use this special memory saving encoding.
594set-max-intset-entries 512
595
596# Similarly to hashes and lists, sorted sets are also specially encoded in
597# order to save a lot of space. This encoding is only used when the length and
598# elements of a sorted set are below the following limits:
599zset-max-ziplist-entries 128
600zset-max-ziplist-value 64
601
602# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
603# order to help rehashing the main Redis hash table (the one mapping top-level
604# keys to values). The hash table implementation Redis uses (see dict.c)
605# performs a lazy rehashing: the more operation you run into an hash table
606# that is rehashing, the more rehashing "steps" are performed, so if the
607# server is idle the rehashing is never complete and some more memory is used
608# by the hash table.
609#
610# The default is to use this millisecond 10 times every second in order to
611# active rehashing the main dictionaries, freeing memory when possible.
612#
613# If unsure:
614# use "activerehashing no" if you have hard latency requirements and it is
615# not a good thing in your environment that Redis can reply form time to time
616# to queries with 2 milliseconds delay.
617#
618# use "activerehashing yes" if you don't have such hard requirements but
619# want to free memory asap when possible.
620activerehashing yes
621
622# The client output buffer limits can be used to force disconnection of clients
623# that are not reading data from the server fast enough for some reason (a
624# common reason is that a Pub/Sub client can't consume messages as fast as the
625# publisher can produce them).
626#
627# The limit can be set differently for the three different classes of clients:
628#
629# normal -> normal clients
630# slave  -> slave clients and MONITOR clients
631# pubsub -> clients subcribed to at least one pubsub channel or pattern
632#
633# The syntax of every client-output-buffer-limit directive is the following:
634#
635# client-output-buffer-limit <class> <hard limit> <soft limit> <soft seconds>
636#
637# A client is immediately disconnected once the hard limit is reached, or if
638# the soft limit is reached and remains reached for the specified number of
639# seconds (continuously).
640# So for instance if the hard limit is 32 megabytes and the soft limit is
641# 16 megabytes / 10 seconds, the client will get disconnected immediately
642# if the size of the output buffers reach 32 megabytes, but will also get
643# disconnected if the client reaches 16 megabytes and continuously overcomes
644# the limit for 10 seconds.
645#
646# By default normal clients are not limited because they don't receive data
647# without asking (in a push way), but just after a request, so only
648# asynchronous clients may create a scenario where data is requested faster
649# than it can read.
650#
651# Instead there is a default limit for pubsub and slave clients, since
652# subscribers and slaves receive data in a push fashion.
653#
654# Both the hard or the soft limit can be disabled by setting them to zero.
655client-output-buffer-limit normal 0 0 0
656client-output-buffer-limit slave 256mb 64mb 60
657client-output-buffer-limit pubsub 32mb 8mb 60
658
659# Redis calls an internal function to perform many background tasks, like
660# closing connections of clients in timeot, purging expired keys that are
661# never requested, and so forth.
662#
663# Not all tasks are performed with the same frequency, but Redis checks for
664# tasks to perform accordingly to the specified "hz" value.
665#
666# By default "hz" is set to 10. Raising the value will use more CPU when
667# Redis is idle, but at the same time will make Redis more responsive when
668# there are many keys expiring at the same time, and timeouts may be
669# handled with more precision.
670#
671# The range is between 1 and 500, however a value over 100 is usually not
672# a good idea. Most users should use the default of 10 and raise this up to
673# 100 only in environments where very low latency is required.
674hz 10
675
676################################## INCLUDES ###################################
677
678# Include one or more other config files here.  This is useful if you
679# have a standard template that goes to all Redis server but also need
680# to customize a few per-server settings.  Include files can include
681# other files, so use this wisely.
682#
683# include /path/to/local.conf
684# include /path/to/other.conf
685