Good tutorial, Nick. Used this pub/sub feature in one of the projects to comunicate between admin part an the public website, very simple and elegant solution.
I know it's not relevant, but I love the sound of your keyboard - what make/model? Keep Youtubing! This is clearly my favorite channel to keep up and to be inspired
@Nick Do you have a recommendation for a standard pattern for grabbing data from the database if the cache isn't populated, and then for updating the cache?
Hi Nick, so what is the difference between using this StackExchange.Redis nuget directly vs using using Microsoft.Extensions.Caching.Distributed, and using it there..?
I can't get your example to build because Visual Studio cannot find that class NewCacheEntryRequest that you used in your CacheController. Is there any particular reason you had to use that request class instead of just passing in a key and value?
Hi, I subscribed to your mailing list but still could not find the source code that was used in the video. Also, if I wanted to start from scratch, would it be to just do a dotnet new console on the command line?
Hi, what happens when I have 500 parallel requests trying to write data to cache, I want to allow only one request to write data to cache and rest 499 request to read data, considering there are multiple web servers running. Something like avoiding multiple same updates on a key and improving the efficiency
You can't, however you can use different Redis "commands" like set if not exists or set if exists, and for example incrementing a value is atomic, so if you increment a value, from different sources, all of them will be applied.
Hi @nick! Great video again! I just wanna ask what will happen if the master fails or crash. Does the slave automatically took place in writing the cache? Thanks and Godless! Hoping for another video that will be covered the rabbitmq or kafkha.
In case of disaster on the master the Redis Sentinel will trigger an automatic failover and the replica will take over. You can also trigger that process manually.
I am getting the below error when i try redis cache. I ran docker on my local linux m/c and did the same demo. Here is the error message i got when i kit the Post method to store data in reids db. Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1] An unhandled exception has occurred while executing the request. StackExchange.Redis.RedisTimeoutException: The timeout was reached before the message could be written to the output buffer, and it was not sent I search in google and added some other optional values to the redis connection string as below localhost:6379,abortConnect=false,connectTimeout=30000,responseTimeout=30000". but the problem not resolved.
Sorry, you failed to mention is why would we want to have a replica? What is the benefit? Does it allow me to bring the master computer down for maintenance? And if it does, my replica becomes a master in this case?
Great Tutorial! Thanks. One question I seem to be unable to find, has anyone figured out how to retrieve a list of values based on keys with wildcards ? In "Native" redis: SET user:1 "Nick"; SET user:2 "Daniel" and then KEYS user:* withh give me the result. Another option is Scan with pattern matching which I also could not find in this package
One of the most underrated tutorial channels on UA-cam. Keep it up!
Good tutorial, Nick. Used this pub/sub feature in one of the projects to comunicate between admin part an the public website, very simple and elegant solution.
Great video! I like how you explained each step and incorporated Docker.
You're the best man! Best tutorials on UA-cam
Perfect explanation. Should be model to every attempt out there.
Thanks a lot , your explanation is literally perfect
I know it's not relevant, but I love the sound of your keyboard - what make/model? Keep Youtubing! This is clearly my favorite channel to keep up and to be inspired
Best Redis video ever!
Now I remember why I stopped writing .net apps :) Great tutorial tho!
@Nick Do you have a recommendation for a standard pattern for grabbing data from the database if the cache isn't populated, and then for updating the cache?
Very well explained...
Lovely
this was really helpful and quick, thanks.
Appropriated Nice One!!! . I am expecting advance video on this topic.
Hello that's good content,can you please make an example for a Redis with certificate connection and Login and Password ?
should I use Microsoft.Extensions.Caching.StackExchangeRedis or StackExchange.Redis
Thanks Nick. I'm curious how others would handle per-user settings.
On a per-users scenario you have to bake the user identifier into the redis key
@@nickchapsas Excellent, that is what I was thinking but wasn't sure if my thinking was in-line with the best practice. Thank you for replying.
Hi Nick, so what is the difference between using this StackExchange.Redis nuget directly vs using using Microsoft.Extensions.Caching.Distributed, and using it there..?
I can't get your example to build because Visual Studio cannot find that class NewCacheEntryRequest that you used in your CacheController. Is there any particular reason you had to use that request class instead of just passing in a key and value?
Hi, I subscribed to your mailing list but still could not find the source code that was used in the video. Also, if I wanted to start from scratch, would it be to just do a dotnet new console on the command line?
hey nick can you add elastichsearch and CI/CD video ?
Elastic search is coming really soon and I am planning to do cover a few CI and cd videos too
How would you implement this in a Clean Architecture structure? (MediatR, Query, Commands).
Can one configure maxmemory-policy through StackExchange Redis?
does subscriber work in oneMessage-to-oneSubscriber mode or one-to-many (assuming I run a cluster of web apps)?
Is there any way to perform query on stored data using .NET ?
Serialization and deserialization make redis slow, it beats the purpose. do you have any improvements?
Hi, what happens when I have 500 parallel requests trying to write data to cache, I want to allow only one request to write data to cache and rest 499 request to read data, considering there are multiple web servers running. Something like avoiding multiple same updates on a key and improving the efficiency
You can't, however you can use different Redis "commands" like set if not exists or set if exists, and for example incrementing a value is atomic, so if you increment a value, from different sources, all of them will be applied.
Thank you!
Hi @nick! Great video again! I just wanna ask what will happen if the master fails or crash. Does the slave automatically took place in writing the cache? Thanks and Godless! Hoping for another video that will be covered the rabbitmq or kafkha.
In case of disaster on the master the Redis Sentinel will trigger an automatic failover and the replica will take over. You can also trigger that process manually.
@@nickchapsas Is there any configuration of redis sentinel or it's on the fly?
I am getting the below error when i try redis cache. I ran docker on my local linux m/c and did the same demo. Here is the error message i got when i kit the Post method to store data in reids db.
Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1]
An unhandled exception has occurred while executing the request.
StackExchange.Redis.RedisTimeoutException: The timeout was reached before the message could be written to the output buffer, and it was not sent
I search in google and added some other optional values to the redis connection string as below
localhost:6379,abortConnect=false,connectTimeout=30000,responseTimeout=30000".
but the problem not resolved.
Never mind. Looks like it is port issue, When i mapped the map 6379 to another port (-p6070:6379), it works fine. Thanks for the nice video
nice one. thanks.
Thank u so much!
A very wonderful channel. Thank you for making these videos and helping us. May Allah ( God) guide and bless you and.
Sorry, you failed to mention is why would we want to have a replica? What is the benefit? Does it allow me to bring the master computer down for maintenance? And if it does, my replica becomes a master in this case?
Nice vid! I only hope that your chapsa is not too big. :P
Coll stuff, but... How do I define servers with different passwords? How do I set this up in the start up?
The connection string allows for that. You can check all the allowed settings here: stackexchange.github.io/StackExchange.Redis/Configuration.html
Thank you
great!
hi Nick, thanks a lot for the videos. However, I cannot find the source code for this video in your github repos. Oktay
Oh my god sorry for that. I forgot to push the commit. It should be up now.
no worries.. thanks a lot..
no worries... thanks a lot
I can't find it either. What repo is it in? Also, yes, great video. Thanks!
Get the source code: eepurl.com/gLjkuv
The link is wrong.
👍🏽
Great Tutorial! Thanks. One question I seem to be unable to find, has anyone figured out how to retrieve a list of values based on keys with wildcards ? In "Native" redis: SET user:1 "Nick"; SET user:2 "Daniel" and then KEYS user:* withh give me the result. Another option is Scan with pattern matching which I also could not find in this package
If you want a list of values, maybe you can use the Hash data type, or a hash of the Redis Keys, you want to retrieve.
Not everyone reach upto here.
Speak too fast.. :(