78 lines
No EOL
1.6 KiB
Text
78 lines
No EOL
1.6 KiB
Text
====== Redis ======
|
|
|
|
Redis ist ein quelloffener (BSD-lizenzierter) In-Memory-Datenstrukturspeicher, der als Datenbank, Cache, Message Broker und Streaming-Engine verwendet wird. Redis bietet Datenstrukturen wie Strings, Hashes, Listen, Sets, sortierte Sets mit Bereichsabfragen, Bitmaps, Hyperlogs, geospatiale Indizes und Streams. Redis verfügt über integrierte Replikation, Lua-Scripting, LRU-Eviction, Transaktionen und verschiedene Ebenen der On-Disk-Persistenz und bietet Hochverfügbarkeit über Redis Sentinel und automatische Partitionierung mit Redis Cluster.
|
|
|
|
|
|
===== Paket =====
|
|
|
|
<code>
|
|
pacman -S redis
|
|
</code>
|
|
|
|
|
|
===== Konfiguration =====
|
|
|
|
|
|
==== redis.conf ====
|
|
|
|
<code>
|
|
nano /etc/redis/redis.conf
|
|
</code>
|
|
|
|
<code>
|
|
port 0
|
|
unixsocket /run/redis/redis.sock
|
|
unixsocketperm 770
|
|
requirepass your-password
|
|
</code>
|
|
|
|
|
|
==== http zur redis-Gruppe hinzufügen ====
|
|
|
|
<code>
|
|
usermod -aG redis http
|
|
</code>
|
|
|
|
|
|
===== Start =====
|
|
|
|
<code>
|
|
systemctl enable --now redis.service
|
|
</code>
|
|
|
|
|
|
==== sysctl ====
|
|
|
|
Wenn der Fehler ''overcommit memory ...'' mit ''systemctl status redis.service'' auftritt, füge dies zu sysctl hinzu:
|
|
|
|
<code>
|
|
/etc/sysctl.d/99-sysctl.conf
|
|
</code>
|
|
|
|
<code>
|
|
vm.overcommit_memory=1
|
|
</code>
|
|
|
|
|
|
===== PHP =====
|
|
|
|
Redis für php aktivieren.
|
|
|
|
<code>
|
|
pacman -S php-igbinary php-redis
|
|
nano /etc/php/conf.d/{igbinary.ini,redis.ini}
|
|
</code>
|
|
|
|
<code>
|
|
extension=igbinary.so
|
|
extension=redis
|
|
</code>
|
|
|
|
<alert type="danger" icon="fa fa-warning">''igbinary'' muss zuerst geladen werden, sonst startet das redis-Modul nicht.</alert>
|
|
|
|
|
|
===== Check =====
|
|
|
|
<code>
|
|
redis-cli -s /var/run/redis/redis.sock --askpass monitor
|
|
</code> |