 <p>Redis is not <em>usually</em> deployed as a "durable" datastore (in the sense of the "D" in ACID.), even with journaling. Most use cases intentionally sacrifice a little durability in return for speed.</p> <p>However, the "append only file" storage mode can optionally be configured to operate in a durable manner, at the cost of performance. It will have to pay for an <a href="http://en.wikipedia.org/wiki/Sync_%28Unix%29" rel="nofollow noreferrer">fsync()</a> on every modification. To configure this, set these two options in your .conf file:</p> <pre><code> appendonly yes appendfsync always </code></pre> <p>From the docs: <a href="http://code.google.com/p/redis/wiki/AppendOnlyFileHowto#How_durable_is_the_append_only_file?" rel="nofollow noreferrer">How durable is the append only file?</a></p> <blockquote> <p>Check redis.conf, you can configure how many times Redis will fsync() data on disk. There are three options:</p> <ul> <li>Fsync() every time a new command is appended to the append log file. Very very slow, very safe.</li> <li>Fsync() one time every second. Fast enough, and you can lose 1 second of data if there is a disaster. </li> <li>Never fsync(), just put your data in the hands of the Operating System. The faster and unsafer method.</li> </ul> </blockquote> <p><em>(Note that the default for appendfsync in the configuration file shipping with Redis post-2.0.0 is <code>everysec</code>, and not <code>always</code>.)</em></p>