You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<ahref="https://gumroad.com/l/python-deployments" style="color: #fff">Learn to deploy Python web applications with this step-by-step book tutorial</a>.
143
+
<ahref="https://gumroad.com/l/python-deployments" style="color: #fff">Learn to deploy Python web applications with this step-by-step book</a>.
<div class="well see-also">Redis is an implementation of the <a href="/no-sql-datastore.html">NoSQL database</a> concept. Learn more in the <a href="/data.html">data</a> chapter or view the <a href="/table-of-contents.html">table of contents</a> for all topics.</div>
8962
+
8963
+
<h3>Redis tutorials</h3>
8964
+
<p>Redis is easy to install and start using compared to most other persistent
8965
+
backends, but it's useful to follow a walkthrough if you have never
8966
+
previously used Redis or any NoSQL data store.</p>
8967
+
<ul>
8968
+
<li>
8969
+
<p><a href="/blog/install-redis-use-python-3-ubuntu-1604.html">How to Use Redis with Python 3 and redis-py on Ubuntu 16.04</a>
8970
+
contains detailed steps to install and start using Redis in Python.</p>
8971
+
</li>
8972
+
<li>
8973
+
<p><a href="https://www.digitalocean.com/community/tutorials/how-to-install-and-use-redis">How To Install and Use Redis</a>
8974
+
is a Redis starter guide.</p>
8975
+
</li>
8976
+
</ul>
8977
+
<h3>Redis with Python</h3>
8978
+
<p>Redis is easier to use with Python if you have a code library client that
8979
+
bridges from your code to your Redis instace. The following libraries and
8980
+
resources provide more information on handling data in a Redis instance
8981
+
with your Python code.</p>
8982
+
<ul>
8983
+
<li>
8984
+
<p><a href="https://github.com/andymccurdy/redis-py">Redis-py</a> is a solid
shows that security is important not only on your application but also
9006
+
the databases you're using as well.</p>
9007
+
</li>
9008
+
<li>
9009
+
<p>Redis, just as with any relational or NoSQL database, needs to be secured
9010
+
based on <a href="http://www.antirez.com/news/96">security guidelines</a>. There is
9011
+
also a post where the main author of Redis
9012
+
<a href="http://www.antirez.com/news/96">cracks its security</a> to show the tradeoffs
9013
+
purposely made between ease of use and security in the default settings.</p>
9014
+
</li>
9015
+
<li>
9016
+
<p><a href="https://www.isredisallsafe.com/">Is your Redis server safe?</a> is a tool
9017
+
to test that your Redis instances are locked down. The tool is based on
9018
+
the blog post
9019
+
<a href="http://www.antirez.com/news/96">a few things about Redis security</a>.</p>
9020
+
</li>
9021
+
<li>
9022
+
<p><a href="https://medium.com/@shahinism/for-gods-sake-secure-your-mongo-redis-etc-4f310cf1bed2">For God’s sake, secure your Mongo/Redis/etc!</a>
9023
+
digs into the unfortunate default security settings that come with many
9024
+
NoSQL databases which can be used to compromise your systems. Make sure
9025
+
to not only install your dependencies such as Redis, but automate modifying
9026
+
default settings to lock them down against attackers.</p>
9027
+
</li>
9028
+
</ul>
9029
+
<h3>General Redis resources</h3>
9030
+
<p>Once you have configured Redis, become comfortable using it and locked it
9031
+
down against malicious actors, you will want to learn more about operating,
9032
+
scaling and collecting metrics. The following resources should help you
9033
+
get started in those areas.</p>
9034
+
<ul>
9035
+
<li>
9036
+
<p><a href="https://github.com/mikeblum/redis-playbook">Redis-playbook</a> is an Ansible
9037
+
playbook for installing, configuring and securing a Redis instance.</p>
9038
+
</li>
9039
+
<li>
9040
+
<p>GitHub wrote a retrospective on
9041
+
<a href="http://githubengineering.com/moving-persistent-data-out-of-redis/">moving persistent data out of Redis</a>
9042
+
and into <a href="/mysql.html">MySQL</a> that is worth a read as you scale up your
9043
+
Redis usage.</p>
9044
+
</li>
9045
+
<li>
9046
+
<p>This video on
9047
+
<a href="https://www.youtube.com/watch?v=rP9EKvWt0zo">Scaling Redis at Twitter</a> is
9048
+
a detailed look behind the scenes with a massive Redis deployment.</p>
9049
+
</li>
9050
+
<li>
9051
+
<p><a href="https://blog.heroku.com/real-world-redis-tips">Real World Redis Tips</a>
9052
+
provides some guidance from Heroku's engineers from deploying Redis at
9053
+
scale. The tips include setting an explicit idle connection timeout,
9054
+
using a connection pooler and avoiding using <code>KEYS</code> in favor of <code>SCAN</code>.</p>
9055
+
</li>
9056
+
<li>
9057
+
<p><a href="https://www.datadoghq.com/blog/how-to-collect-redis-metrics/">How to collect Redis metrics</a>
9058
+
shows how to use the Redis CLI client to grab key metrics on latency.</p>
9059
+
</li>
9060
+
<li>
9061
+
<p><a href="https://medium.com/appaloosa-store-engineering/you-should-revise-your-redis-max-connections-setting-8136f063c916">You should revise your Redis max connections setting</a>
9062
+
is a retrospective from a hard web application failure due to Redis
9063
+
connections maxing out on Heroku, and how to avoid this in your own
9064
+
applications by modifying your <code>redis.conf</code> settings.</p>
9065
+
</li>
9066
+
</ul>
8980
9067
<h1>Application Programming Interfaces</h1>
8981
9068
<p>Application programming interfaces (APIs) provide machine-readable
8982
9069
data transfer and signaling between applications.</p>
@@ -10067,6 +10154,7 @@ <h1>Change Log</h1>
10067
10154
<h2>2017</h2>
10068
10155
<h3>January</h3>
10069
10156
<ul>
10157
+
<li>Further work on the <a href="/git.html">Git</a> page.</li>
0 commit comments