| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -140,7 +140,7 @@ <h3 class="panel-head"><a href="/table-of-contents.html" style="color: #fff;">Ch | |||
| 140 | 140 | <div style="margin: 0 0 12px;background-color: #22B24C;"> | |
| 141 | 141 | <div class="container"> | |
| 142 | 142 | <p class="banner sans-font"> | |
| 143 | - <a href="https://gumroad.com/l/python-deployments" style="color: #fff">Learn to deploy Python web applications with this step-by-step book tutorial</a>. | ||
| 143 | + <a href="https://gumroad.com/l/python-deployments" style="color: #fff">Learn to deploy Python web applications with this step-by-step book</a>. | ||
| 144 | 144 | </p> | |
| 145 | 145 | </div> | |
| 146 | 146 | </div> | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -8735,8 +8735,7 @@ <h3>Key-value pair data stores</h3> | |||
| 8735 | 8735 | store. Redis is often called "the Swiss Army Knife of web application | |
| 8736 | 8736 | development." It can be used for caching, queuing, and storing session data | |
| 8737 | 8737 | for faster access than a traditional relational database, among many other | |
| 8738 | - use cases. <a href="https://github.com/andymccurdy/redis-py">Redis-py</a> is a solid | ||
| 8739 | - Python client to use with Redis.</p> | ||
| 8738 | + use cases. Learn more on the <a href="/redis.html">Redis page</a>.</p> | ||
| 8740 | 8739 | </li> | |
| 8741 | 8740 | <li> | |
| 8742 | 8741 | <p><a href="http://www.memcached.org/">Memcached</a> is another widely used in-memory | |
@@ -8790,30 +8789,6 @@ <h3>Redis resources</h3> | |||
| 8790 | 8789 | applications by modifying your <code>redis.conf</code> settings.</p> | |
| 8791 | 8790 | </li> | |
| 8792 | 8791 | </ul> | |
| 8793 | - <h3>Redis Security</h3> | ||
| 8794 | - <p>Redis should be customized out of its default configuration to secure it | ||
| 8795 | - against unauthorized and unauthenticated users. These resources provide | ||
| 8796 | - some advice on Reids security and guarding against data breaches.</p> | ||
| 8797 | - <ul> | ||
| 8798 | - <li> | ||
| 8799 | - <p><a href="http://averagesecurityguy.info/2015/09/17/pentesting-redis-servers/">Pentesting Redis servers</a> | ||
| 8800 | - shows that security is important not only on your application but also | ||
| 8801 | - the databases you're using as well.</p> | ||
| 8802 | - </li> | ||
| 8803 | - <li> | ||
| 8804 | - <p>Redis, just as with any relational or NoSQL database, needs to be secured | ||
| 8805 | - based on <a href="http://www.antirez.com/news/96">security guidelines</a>. There is | ||
| 8806 | - also a post where the main author of Redis | ||
| 8807 | - <a href="http://www.antirez.com/news/96">cracks its security</a> to show the tradeoffs | ||
| 8808 | - purposely made between ease of use and security in the default settings.</p> | ||
| 8809 | - </li> | ||
| 8810 | - <li> | ||
| 8811 | - <p><a href="https://www.isredisallsafe.com/">Is your Redis server safe?</a> is a tool | ||
| 8812 | - to test that your Redis instances are locked down. The tool is based on | ||
| 8813 | - the blog post | ||
| 8814 | - <a href="http://www.antirez.com/news/96">a few things about Redis security</a>.</p> | ||
| 8815 | - </li> | ||
| 8816 | - </ul> | ||
| 8817 | 8792 | <h2>Document-oriented</h2> | |
| 8818 | 8793 | <p>A document-oriented database provides a semi-structured representation for | |
| 8819 | 8794 | nested data.</p> | |
@@ -8977,6 +8952,118 @@ <h2>NoSQL data stores learning checklist</h2> | |||
| 8977 | 8952 | document-oriented data store such as MongoDB.</p> | |
| 8978 | 8953 | </li> | |
| 8979 | 8954 | </ol> | |
| 8955 | + <h1>Redis</h1> | ||
| 8956 | + <p><a href="https://redis.io/">Redis</a> is an in-memory key-value pair | ||
| 8957 | + database typically classified as a <a href="/no-sql-datastore.html">NoSQL database</a>. | ||
| 8958 | + Redis is commonly used for <a href="/caching.html">caching</a>, transient data storage | ||
| 8959 | + and as a holding area for data during analysis in Python applications.</p> | ||
| 8960 | + <p><a href="" style="border: none;"><img src="/source/static/img/logos/redis.jpg" width="100%" alt="Redis logo." class="technical-diagram" /></a></p> | ||
| 8961 | + <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 | ||
| 8985 | + Python client to use with Redis.</p> | ||
| 8986 | + </li> | ||
| 8987 | + <li> | ||
| 8988 | + <p><a href="http://charlesleifer.com/blog/walrus-lightweight-python-utilities-for-working-with-redis/">Walrus</a> | ||
| 8989 | + is a higher-level Python wrapper for Redis with some caching, querying | ||
| 8990 | + and data structure components build into the library.</p> | ||
| 8991 | + </li> | ||
| 8992 | + <li> | ||
| 8993 | + <p><a href="http://jamesls.com/writing-redis-in-python-with-asyncio-part-1.html">Writing Redis in Python with Asyncio</a> | ||
| 8994 | + shows a detailed example for how to use the new Asyncio standard library in | ||
| 8995 | + Python 3.4+ for working with Redis.</p> | ||
| 8996 | + </li> | ||
| 8997 | + </ul> | ||
| 8998 | + <h3>Redis Security</h3> | ||
| 8999 | + <p>Redis should be customized out of its default configuration to secure it | ||
| 9000 | + against unauthorized and unauthenticated users. These resources provide | ||
| 9001 | + some advice on Reids security and guarding against data breaches.</p> | ||
| 9002 | + <ul> | ||
| 9003 | + <li> | ||
| 9004 | + <p><a href="http://averagesecurityguy.info/2015/09/17/pentesting-redis-servers/">Pentesting Redis servers</a> | ||
| 9005 | + 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> | ||
| 10070 | 10158 | <li>New <a href="/git.html">Git</a> page.</li> | |
| 10071 | 10159 | <li>New resources and descriptions on the | |
| 10072 | 10160 | <a href="/development-environments.html">development environments</a> page.</li> | |
| Back | FazBrowse Home | New Git URL |
0 commit comments