We getting near the GA of the next major Redis version, and major it is indeed.
Ken the Warrior Salvatore Sanfilippo @antirez highlights some of what’s in scope: replication v2, LFU cache eviction policy, non locking code>DEL and
FLUSHDB, mixed AOF-RDB format, the new
MEMORY command and… MODULES! MODULES! MODULES!
The current Redis version gets an update that every developer should get because it protects against a cross protocol vulnerability that can be used to attack your laptop from the browser – see a proof of concept by Bouke vdBijl @BvdBijl and another one by Mike Nolan @SxNolan.
Have you ever wondered what other people are doing with Redis? Well, we have and our VP Product Marketing (((socialeena))) @leena_joshi2015 did a stupendous job in cajoling responses from the open source Redis community and Redis’ customers.
Salvatore Sanfilippo @antirez in a session about Redis’ view of security (“not our problem”), insecure default security settings that “just work” and the complete recipe for unleashing a fecal tornado. Watch this if you want to understand the underlying reasoning and future direction of security and Redis.
Note: audio a bit wonky, but bearable.
Most Redis users never need to concern themselves with memory fragmentation, but there are cases where it becomes and ugly and expensive fact. While fragmentation isn’t a Redis-specific issue per se, the only way to defragment an instance’s memory is to reboot it (ouch). Or rather, that was the case until this pull request by Redis’ Oran Agra was merged. Going forward, the built-in defragmentor (disabled by default) can remake a whole out of the Swiss-cheese that your server’s memory had become.
OH antirez: I feel like that
Udi Kidron of @Datorama tells about the migration of their centralized data store. The change, motivated by the desire to reduce operational overheads, was done gradually so the team was able to reduce risks and develop optimal solutions for each challenge they encountered. What I like best, however, is how the Redis community had helped, in this case the community being Redisson‘s Nikita Koksharov – well done 🙂
The story from GitHub Engineering @GitHubEng by platform engineers Bryana Knight @bryanaknight and Miguel Fernández @mikelodeon is about moving in the opposite direction, in which data is taken out of Redis and into MySQL. Simplified operations are also quoted here as the motivating force in this case, but transition itself had been preceded by significant optimizations and infrastructural development.
The comments at HackerNews are also interesting.
Give a man a fish and you’ll feed him for a day; give a developer the Redis modules API (and the promise for fame and fortune) and you’ve got yourself a hackathon! With five winners and over 15 finalists, it was definitely a great experience 🙂
There are only a handful of experiences that are more rewarding and educational than solving real production issues. That experience, however, often entails turning your hair prematurely gray and responsible adults have been known to be reduced to slobbering babies by it. To reduce your personal risk and save your mane’s natural RGB value, you’d be wise to heed the lessons learned over the course of more than 6 Redis production years at trivago Engineering @trivago_tech as told by Andy Grunwald @andygrunwald.
OH “Life is what happens to you while you’re busy making other plans.” John Lennon, Beautiful Boy
The winning entry of the aforementioned hackathon is a Redis module that provides rate limiter based on the generic cell rate algorithm. More from the module’s author, Brandur @brandur, on the why, how & what in his guest post in our blog – redis-cell: a Rate Limiting Redis Module.
Here’s something you don’t see every day – a Redis-backed rate limiting based on generic cell rate algorithm, as a Ruby gem, by Pavel Pravosud @rwz.
Themis is a crypto engine from Cossack Labs @cossacklabs that now has a Redis module. Read more in the blog post.
A package that makes it sooo easy to do Redis module unit tests – by Dvir Volk @dvirsky.
Gryadka is a minimalistic reliable master-master replicated consistent key/value layer on top of multiple instances of Redis. Using 2N+1 Redis instances Gryadka keeps working when up to N instances become unavailable.
Its core has less than 500 lines of code but provides full featured Paxos implementation supporting such advance features as cluster membership change (ability to add/remove nodes to a cluster) and distinguished proposer optimization (using one round trip to change a value instead of two).
All this awesomeness is brought to us by Denis Rystsov @rystsov.
An easy introduction to Apache Airflow that handles caching (foreign exchange rate) data from PostgreSQL to Redis. Thanks to Mark Litwintschik @marklit82.
Ways being “request bundling” and “deferred updates” – solid advice from Andre Wyrwa @wyrfel via ICONIC Engineering @ICONICEng.
By Christoph Strobl @stroblchristoph
In which (((Kevin Hoffman))) @KevinHoffman shows how to.
Sweet and short – Ethan Hann @EthanHann‘s replacement for Laravel’s RedisStore compresses your strings.
Grab your hardhat! (7 min read)
Kyle @stockholmux shows how to build a data streaming application using his favorite tools of the trade.
OH “Redis is a core architecture: Before 2016, Redfin did not have a built-in caching strategy. Now, we have Redis, which is behind some of the huge performance gains we’ve seen on the map and listing details page this year.” by Bridget Frey @SVBridget via Redfin @Redfin
An overview and implementation of the above by M. Cetin @manorie_.
Every time you go online searching for the solution to your problem, you can make the world a better place if you write up your findings. That is exactly what Hector Yeomans @h_yeomans did after surviving his own battle of wits against security certificates and silent exceptions.
Chaos testing is a great way to make sure that you’re ready for that horrible moment when everything goes to hell in production. This useful idea is implemented by Vishwas Lele @vlele at AIS @aisteam in a fork off the Windows fork of Redis.
OH Orane Edwards @oraneedwards8 > Adding #redis to my stack is probably the best decision I’ve made in life.