Redis®*: Aan de slag
Korte handleiding om aan de slag te gaan met Redis
👋 Welkom bij de Stackhero-documentatie!
Stackhero biedt een kant-en-klare Redis cloud oplossing die tal van voordelen biedt, waaronder:
Redis Commanderweb UI inbegrepen.- Onbeperkte berichtgrootte en overdrachten.
- Moeiteloze updates met slechts één klik.
- Optimale prestaties en robuuste beveiliging aangedreven door een privé en dedicated VM.
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om de Redis cloud hosting oplossing van Stackhero te proberen!
Redis is een krachtige en extreem snelle in-memory database die verschillende rollen kan vervullen. U kunt het gebruiken als cache, als key-value store, als engine voor realtime datastructuren, of als publish/subscribe- en event-systeem.
Redis is opnieuw open source: sinds Redis 8 (mei 2025) is het beschikbaar onder de GNU AGPLv3-licentie. Als u de voorkeur geeft aan een permissief gelicentieerd (BSD) drop-in alternatief, is de communitygedreven fork Valkey ook beschikbaar op Stackhero.
Om u op weg te helpen, hebben we codevoorbeelden gedeeld die laten zien hoe u verbinding maakt met een Redis-instance. U vindt ze in deze GitHub-repository: https://github.com/stackhero-io/redisGettingStarted.
Redis gebruiken met Ruby en Ruby on Rails
Redis configureren als cachesysteem voor Ruby on Rails
Om te beginnen kunt u de redis gem installeren met:
bundle add redis
Vervolgens kunt u config/environments/production.rb openen en de volgende regel toevoegen:
config.cache_store = :redis_cache_store, { url: ENV["REDIS_URL"] }
Daarna kunt u de omgevingsvariabele REDIS_URL definiëren. Hier is een template die u kunt aanpassen met uw eigen gegevens:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"
Standaard is caching alleen ingeschakeld in de productieomgeving. Als u caching tijdens development wilt testen, kunt u ook
config/environments/development.rbbijwerken. Voeg dezelfde configuratie toe als hierboven en neemconfig.action_controller.perform_caching = trueop om caching in te schakelen. Een eenvoudige manier om te controleren of caching werkt, is een Rails-console te starten metbin/rails consoleenRails.cache.write("foo", "bar")te proberen.
Voor meer details over het gebruik van Redis als cache store in Ruby on Rails kunt u de officiële Rails-documentatie raadplegen.
Redis configureren voor Sidekiq
Sidekiq gebruikt automatisch de Redis-server die is gedefinieerd in de omgevingsvariabele REDIS_URL.
U kunt REDIS_URL als volgt instellen met uw eigen verbindingsgegevens:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"
Voor meer details over het gebruik van Sidekiq met Redis kunt u de officiële Sidekiq-documentatie raadplegen.
Redis configureren voor Resque
Net als Sidekiq gebruikt Resque de Redis-server die is gedefinieerd in de omgevingsvariabele REDIS_URL.
U kunt REDIS_URL als volgt instellen met uw eigen gegevens:
REDIS_URL="rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>"
Voor meer informatie over het gebruik van Resque met Redis kunt u de officiële Resque-documentatie raadplegen.
PHP-sessies beheren met Redis
Als u PHP-sessies wilt opslaan op Stackhero for Redis, kunt u het volgende voorbeeld gebruiken:
<?php
// Parse Redis URL
$redis_url = parse_url("rediss://default:<yourPassword>@<XXXXXX>.stackhero-network.com:<PORT_TLS>")
// Configure session handler
ini_set("session.save_handler", "redis")
ini_set("session.save_path", "tls://{$redis_url["host"]}:{$redis_url["port"]}?auth={$redis_url["pass"]}&timeout=5")
// Start the session
session_start()
?>
De beveiliging van Redis verbeteren
Het is belangrijk om uw Redis-instance goed te beveiligen, en een paar eenvoudige maatregelen kunnen een groot verschil maken.
Communicatie met Redis versleutelen (TLS)
Standaard versleutelt Redis netwerkverkeer niet. Op Stackhero is TLS-versleuteling standaard ingeschakeld.
Om hiervan te profiteren, kunt u uw Redis-client configureren om TLS te gebruiken en verbinding te maken via de poort <PORT_TLS>. U kunt <PORT_CLEAR> het best alleen gebruiken in specifieke gevallen waarin niet-versleuteld verkeer passend is, terwijl <PORT_TLS> versleutelde communicatie biedt.
Het goede nieuws is dat er aan de serverzijde niets extra's hoeft te worden geconfigureerd. Dat deel regelen wij al voor u.
Redis beschermen tegen brute-forceaanvallen
Uw Redis-instance is beveiligd met een wachtwoord, en Stackhero genereert standaard automatisch een sterk wachtwoord. Als u besluit dit te wijzigen, kunt u het best een zeer lang en complex wachtwoord kiezen.
Redis is extreem snel en kan een zeer groot aantal authenticatiepogingen verwerken. In de praktijk betekent dat dat een aanvaller mogelijk tot 150,000 wachtwoordcombinaties per seconde kan proberen.
Om de bescherming te versterken, hanteren we een minimale wachtwoordlengte van 16 tekens, wat neerkomt op ongeveer 4.5231285e+74 mogelijke combinaties. Standaard gebruikt Stackhero een wachtwoord van 64 tekens, wat neerkomt op ongeveer 9.61963e+111 mogelijke combinaties.
Voor nog sterkere bescherming kunt u ook Stackhero-firewallregels configureren via het tabblad Firewall om alleen verbindingen vanaf uw eigen IP-adressen toe te staan. Dit is een van de meest effectieve manieren om uw algehele security posture te verbeteren.