Łączenie z Redis
Skonfiguruj rozproszony bufor Redis.
Łączenie z Redis to bezpłatna lekcja C# Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej C# Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs C# Academy zawiera 4 lekcji w sumie.
Czym jest Redis
Redis to szybki magazyn danych klucz-wartość działający w pamięci, często używany jako rozproszona pamięć podręczna. Działa jako osobny serwer, z którym wiele instancji aplikacji łączy się przez sieć.
Instalowanie pakietu
ASP.NET Core integruje się z Redis za pośrednictwem pakietu Microsoft.Extensions.Caching.StackExchangeRedis, który dostosowuje klienta StackExchange.Redis do interfejsu IDistributedCache.
dotnet add package Microsoft.Extensions.Caching.StackExchangeRedisRejestrowanie Redis za pomocą AddStackExchangeRedisCache
Wywołaj AddStackExchangeRedisCache podczas rejestrowania usług i przekaż parametry połączenia. Spowoduje to skonfigurowanie Redis jako implementacji IDistributedCache.
builder.Services.AddStackExchangeRedisCache(options =>
{
options.Configuration = "localhost:6379";
});Korzystanie z konfiguracji
Przechowuj parametry połączenia w pliku appsettings.json i odczytuj je za pomocą IConfiguration, aby mogły różnić się w zależności od środowiska.
builder.Services.AddStackExchangeRedisCache(options =>
{
options.Configuration =
builder.Configuration.GetConnectionString("Redis");
});Prefiks InstanceName
Ustaw InstanceName, aby poprzedzać nim każdy klucz przechowywany przez Redis. W ten sposób klucze aplikacji otrzymują własną przestrzeń nazw, dzięki czemu wiele aplikacji może bezpiecznie współdzielić jedną instancję Redis.
builder.Services.AddStackExchangeRedisCache(options =>
{
options.Configuration = "localhost:6379";
options.InstanceName = "MyApp:";
});Opcje parametrów połączenia
Parametry połączenia StackExchange.Redis obsługują wiele opcji: wiele punktów końcowych, hasło, SSL i limity czasu, wszystkie oddzielone przecinkami.
options.Configuration =
"redis-server:6380,password=secret,ssl=True,abortConnect=False";Ten sam interfejs, prawdziwy Redis
Po zarejestrowaniu implementacji nadal używasz IDistributedCache dokładnie tak jak wcześniej. Zmienia się tylko wiersz rejestracji, więc usługi nie wymagają żadnych zmian, aby rozpocząć korzystanie z Redis.
public WeatherService(IDistributedCache cache) => _cache = cache;
// GetStringAsync / SetStringAsync now talk to RedisUruchamianie Redis lokalnie
Na potrzeby programowania możesz szybko uruchomić Redis za pomocą Dockera, a następnie wskazać go w parametrach połączenia.
docker run -p 6379:6379 redis:7
# then Configuration = "localhost:6379"Opcje zarządzanego Redis
Na produkcji zarządzane usługi, takie jak Azure Cache for Redis lub AWS ElastiCache, obsługują skalowanie, trwałość danych i przełączanie awaryjne. Zwykle łączysz się z punktem końcowym SSL za pomocą klucza dostępu.
options.Configuration =
"myapp.redis.cache.windows.net:6380,password=KEY,ssl=True";Obsługa odporności połączenia
Ustaw abortConnect=False, aby klient nadal ponawiał próby, gdy Redis jest chwilowo niedostępny podczas uruchamiania, zamiast natychmiast zgłaszać wyjątek. Połącz to z Polly, aby zapewnić odporność na poziomie wywołań.
Kontrole stanu
Zarejestruj kontrolę stanu Redis, aby aplikacja mogła raportować orkiestratorom i modułom równoważenia obciążenia stan połączenia z pamięcią podręczną.
builder.Services.AddHealthChecks()
.AddRedis("localhost:6379");Szybki test
Przetestuj połączenie z Redis.
Podsumowanie
Redis to szybka zewnętrzna pamięć podręczna. Zainstaluj Microsoft.Extensions.Caching.StackExchangeRedis i wywołaj AddStackExchangeRedisCache, przekazując parametry połączenia Configuration oraz opcjonalnie prefiks InstanceName. Usługi nadal korzystają z IDistributedCache bez żadnych zmian. Używaj konfiguracji zależnej od środowiska, ustaw abortConnect=False dla większej odporności i dodaj kontrolę stanu Redis.
Często zadawane pytania
Czy lekcja „Łączenie z Redis” jest bezpłatna?
Tak — pełny tekst „Łączenie z Redis” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu C# Academy, przejdź na CoddyKit PRO. Kurs C# Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Łączenie z Redis”?
Skonfiguruj rozproszony bufor Redis. Ćwiczysz C# Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć C# Academy?
Nie wymagamy żadnego doświadczenia. C# Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Łączenie z Redis”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji C# Academy?
Tak. Każda lekcja C# Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Abstrakcja IDistributedCache
- Łączenie z Redis
- Wzorce buforowania i wygasanie
- Buforowanie serializowanych obiektów