Heim > Artikel > Backend-Entwicklung > Redis im Vergleich zu Memcached und unter CentOS installiert und konfiguriert
Erfahren Sie mehr über Redis
Redis ist eine Open-Source-, netzwerkfähige, speicherbasierte Schlüsselwertdatenbank. Sie ist in ANSI C geschrieben und bietet APIs in mehreren Sprachen. Sie ist fast einfach zu bekommen Die Installation dauerte nur wenige Minuten und die Anwendung funktionierte reibungslos. Mit anderen Worten: Mit nur geringem Zeit- und Arbeitsaufwand können Sie sofortige und hervorragende Leistungsverbesserungen erzielen, was bedeutet, dass es sich um eine sehr einfache Caching-Lösung handelt. Es unterstützt gespeicherte Werttypen, die nicht auf Zeichenfolgen beschränkt sind, sondern auch Master-Slave-Synchronisation, Datenpersistenz usw. unterstützen. Jeder denkt, dass Redis die beliebteste Schlüsselwert-Speicherdatenbank ist. Muss jemand nach Memcached fragen?
Redis VS Memcached
Zuerst habe ich die Datenbank-Rangliste von DB-Engines.com auf Platz neun überprüft, Key-Value-Store auf Platz 23 Der Laden ist der Zweite. Das hat natürlich nichts zu bedeuten.
Redis unterstützt mehr Datentypen, einschließlich: String, Hash, List, Set; Memcached unterstützt nur einen String-Datentyp.
Redis kann das Konzept von Transaktionen durch Befehle wie Multi/Watch/Exec unterstützen und einen Stapel von Befehlen atomar ausführen. Im Memcached-Anwendungsmodus gibt es keine Unterstützung für Transaktionen, mit Ausnahme von Befehlen für atomare Operationen wie Inkrementieren/Dekrementieren .
Redis kann den Server im Master-Slave-Modus konfigurieren, um eine Master-Slave-Synchronisationssicherung zu erreichen, und unterstützt nur zwei Persistenzlösungen. Memcached garantiert weder die Gültigkeit der gespeicherten Daten noch führt es eine Datenpersistenz durch. Natürlich hat das alles nichts zu bedeuten.
Alles hat seine Bedeutung auf dieser Welt. Obwohl der interne Speicherverwaltungsmechanismus von Memcached nicht so komplex ist wie der von Redis, ist er praktischer und effizienter, da Memcached bei der Verarbeitung von Metadaten relativ weniger Speicherressourcen verbraucht. Aufgrund seines relativ einfachen Designtrends bietet er auch Vorteile gegenüber Redis in Bezug auf die horizontale Erweiterung Funktionseinstellungen. Wenn Sie beispielsweise eine Zeichenfolge oder eine HTML-Seite zwischenspeichern, ist es relativ besser, Memcached zu verwenden.
Redis unter CentOS installieren
1. Laden Sie Redis herunter, entpacken und installieren Sie es. Hier ist die neueste Version 3.2.5, die immer noch über wget heruntergeladen wird ).
wget http://download.redis.io/releases/redis-3.2.5.tar.gztar xzf redis-3.2.5.tar.gz mv redis-3.2.5 /usr/local/redis
Der obige Befehl mv redis-3.2.5 /usr/local/redis verschiebt die Redis-Installationsdatei natürlich in das Installationsverzeichnis Verzeichnis.
2. Geben Sie das Verzeichnis ein, kompilieren und installieren Sie
cd /usr/local/redis make make install
Die Installation ist abgeschlossen. Zu diesem Zeitpunkt werden Redis-Server, Redis-Cli usw. angezeigt /local/bin/-Verzeichnis. Führen Sie das Skript aus, geben Sie es ein und schauen Sie es sich an. Wenn nicht, gehen Sie in das Dekomprimierungsverzeichnis und kopieren Sie es hinein.
cd /usr/local/bin/
3. Konfigurieren Sie redis.conf
zurück zu /usr/local /redis-Verzeichnis, konfigurieren:
cd ../redis vim redis.conf
Hier gibt es zwei Orte zum Ändern, einfach binden und dämonisieren.
Seien Sie vorsichtig, wenn Sie die Bindung hier konfigurieren. Standardmäßig gibt es nur eine 127.0.0.1. Derzeit können Sie nur eine Verbindung zu anderen LANs herstellen. Daher müssen mehrere IPs konfiguriert werden, damit Verbindungen innerhalb des LANs hergestellt werden können.
daemonize dient dazu, festzulegen, ob Redis im Hintergrund gestartet werden soll. Der Standardwert ist „Nein“. Normalerweise muss Redis als Dienst gestartet werden, daher ist es hier auf „Ja“ eingestellt .
修改完后,保存退出。
4.启动
cd /usr/local/bin/ redis-server /usr/local/redis/redis.conf netstat -anp | grep 6379
5.测试一下
这里用命令行模式连接上 Redis 进行一个简单的设置、获取缓存测试。
redis-cli #连接 Redis ,默认是本机的。 keys * #查看现在所有 keyset name mafly #设置一个key为`name`,value为`mafly`的缓存对象。 get name #获取key为`name`的缓存
6.关闭 Redis
redis-cli shutdown
通过 netstat 可以看出来端口已经是TIME_WAIT状态了。
总结一下
经过这次安装配置 Redis 的过程,也让我更加了解了一下 Memcached ,也更明白了这两种最流行的 Key-Value 缓存服务的优劣势,当然大多数都是通过网络获取,在实际运用中怎样也在监测中。