So, lets do stream on Saturday this time. Again, it is going to be stream about DP, how to do top down and convert to bottom up + memory optimization.
Also we are going to implement sharding of all popular storages: Redis, dynamo, cassandra, etc
Also we are going to implement sharding of all popular storages: Redis, dynamo, cassandra, etc
🔥9❤1
Daily
Yesterday it was power of 3, and it was easier
https://leetcode.com/problems/power-of-four/description/?envType=daily-question&envId=2025-08-15
Yesterday it was power of 3, and it was easier
https://leetcode.com/problems/power-of-four/description/?envType=daily-question&envId=2025-08-15
❤3
Do you remember we were talking about Messenger or Presence Service System design?
There was a problem: how to keep hundreds of millions clients on websockets? I loooked up some stuff, and this is basically the solution (high level) that works in production.
We basically do not need any web socket server manager. WebSocket node itself will manage the state in Redis. That is it.
There was a problem: how to keep hundreds of millions clients on websockets? I loooked up some stuff, and this is basically the solution (high level) that works in production.
We basically do not need any web socket server manager. WebSocket node itself will manage the state in Redis. That is it.
🔥5
Websocket server and client ping each other. If connection is getting timed out - client will initiate reconnect which will override the data about itself in Redis.
❤2
Do you remember distributed lock system design pattern? Basically one of the most famous algos is RedLock - implementation based on Redis (you do atomic set with TTL claiming the lock and the atomically removing the record).
So, this solution actually has a lot of critic, and one of the critics is done by Martin Kleppmann (this guy who wrote Designing data intensive applications)
https://martin.kleppmann.com/2016/02/08/how-to-do-distributed-locking.html
So, this solution actually has a lot of critic, and one of the critics is done by Martin Kleppmann (this guy who wrote Designing data intensive applications)
https://martin.kleppmann.com/2016/02/08/how-to-do-distributed-locking.html
❤2
So, the guy who created RedLock algo made A DISS ON MARTIN.
THIS IS SO FUNNY AND EPIC IN A SENSE
DISTRIBUTED BATTLE
THIS IS SO FUNNY AND EPIC IN A SENSE
DISTRIBUTED BATTLE
I didn't find Martin's analysis on Salvatore's analysis on Martin's analysis on Salvatore's RedLock (((
TL; DR
RedLock (Redis based lock using SET NX + TTL) might not be that accurate and correct.
If you plan to use it for some critical functionality - stick to proper concensus (raft, paxos)
RedLock (Redis based lock using SET NX + TTL) might not be that accurate and correct.
If you plan to use it for some critical functionality - stick to proper concensus (raft, paxos)
❤4
Today we are streaming, +- 20:00 Prague time.
Topics: 2dimensional DP + Redis Sharding implementation on hashslots
Topics: 2dimensional DP + Redis Sharding implementation on hashslots
🔥3
We are doing LeetRooms with friends. This is semi competitive thing, when we select 4 problems and solve with leaderboard, etc
Let's also check the problems during stream really quickly they are not some bullshit, but pretty simple and cover couple of basic leetcode patterns to revise
Let's also check the problems during stream really quickly they are not some bullshit, but pretty simple and cover couple of basic leetcode patterns to revise
❤1👍1
Daily
https://leetcode.com/problems/new-21-game/description/?envType=daily-question&envId=2025-08-17
btw, fuck daily today, it is not mid, explanation in the solutions afterwards
#daily
https://leetcode.com/problems/new-21-game/description/?envType=daily-question&envId=2025-08-17
btw, fuck daily today, it is not mid, explanation in the solutions afterwards
#daily