Heim Datenbank MySQL-Tutorial Redis 3.0.3集群搭建

Redis 3.0.3集群搭建

Jun 07, 2016 pm 03:10 PM
redis集群

Redis3.0版本之后支持Cluster,具体介绍redis集群我就不多说,了解请看redis中文简介。首先,直接访问redis.io官网,下载redis.t

Redis3.0版本之后支持Cluster,具体介绍redis集群我就不多说,了解请看redis中文简介。

首先,直接访问redis.io官网,下载redis.tar.gz,现在版本3.0.3,我下面已经在虚拟机启动了两个linux来部署redis。

1. 下载和解包

  cd /usr/local/

  wget

  tar -zxvf redis-3.0.3.tar.gz

  mv redis-3.0.3  redis

2. 编译安装

  cd redis

  make && make install

  有些人在这里可能会碰到一个错误导致编译不过(如下)

 

make[1]: Entering directory `/redis/src'
CC adlist.o
In file included from adlist.c:34:
zmalloc.h:50:31: error: jemalloc/jemalloc.h: No such file or directory
zmalloc.h:55:2: error: #error "Newer version of jemalloc required"
make[1]: *** [adlist.o] Error 1
make[1]: Leaving directory `/redis/src'
make: *** [all] Error 2

 

  原因是没有安装jemalloc内存分配器,可以安装jemalloc 或 直接 输入make MALLOC=libc  && make install

3. 创建redis节点

    我们将在两台Server上创建六个节点,每台3个,3主3从。

  1)Server1

    cd /usr/local/

    mkdir redis_cluster  //创建集群目录

    mkdir 7000 7001 7002  //分别代表三个节点    其对应端口 7000 7001 7002

    创建7000节点为例,

    cd ./7000

    cp /usr/local/redis/redis.conf  ./    //拷贝到当前7000目录

    vi redis.conf    //编辑配置  主要修改一下几个参数

 

daemonize    yes                          //redis后台运行
pidfile  /var/run/redis_7000.pid    //pidfile文件对应7000
port  7000                                  //端口7000
cluster-enabled  yes                    //开启集群  把注释#去掉
cluster-config-file  nodes.conf      //集群的配置  配置文件首次启动自动生成
cluster-node-timeout  5000      //请求超时  设置5秒够了
appendonly  yes                        //aof日志开启  有需要就开启,它会每次写操作都记录一条日志

 

    配置好了,就相应地把这个修改后的配置文件拷贝到 7001  7002目录,注意要修改监听端口port 7001 7002.

    接下来,启动服务,进入节点目录

    依次执行  redis-server  redis.conf

    可以看到生成了appendonly.aof  nodes.conf

    ps -ef | grep redis 查看是否启动成功

      root 885 0.8 0.2 129452 2620 ? Ssl 20:10 0:21 redis-server *:7000 [cluster]
      root 887 0.8 0.2 129452 2616 ? Ssl 20:10 0:21 redis-server *:7001 [cluster]
      root 893 0.8 0.2 128356 2612 ? Ssl 20:10 0:21 redis-server *:7002 [cluster]

    netstat -tnlp | grep redis 可以看到redis监听端口

      tcp 0 0 0.0.0.0:7000 0.0.0.0:* LISTEN 885/redis-server *
      tcp 0 0 0.0.0.0:7001 0.0.0.0:* LISTEN 887/redis-server *
      tcp 0 0 0.0.0.0:7002 0.0.0.0:* LISTEN 893/redis-server *
      tcp 0 0 0.0.0.0:17000 0.0.0.0:* LISTEN 885/redis-server *
      tcp 0 0 0.0.0.0:17001 0.0.0.0:* LISTEN 887/redis-server *
      tcp 0 0 0.0.0.0:17002 0.0.0.0:* LISTEN 893/redis-server *

    我们除了看到 配置文件中设置的端口700*    还有700*+10000  (1700*), 前者是客户端访问的, 后者是集群内部节点之间访问的.

    注意,在多台Server间搭建集群,如果开了防火墙的,需要设置iptables开放上面所有端口.

 

  2) Server2

    步骤和Server1一样, 设置端口  7003  7004  7005

 

 4. 创建集群

  前面已经准备好了搭建集群的redis节点,接下来我们要把这些节点都串连起来搭建集群。官方提供了一个工具:redis-trib.rb  (/usr/local/redis/src/redis-trib.rb) 看后缀就知道这鸟东西不能直接执行,它是用ruby写的一个程序,所以我们还得安装ruby.

  yum -y install ruby ruby-devel rubygems rpm-build    //网上不明觉厉,都是这么安装的,就跟着这样玩吧

  再用 gem 这个命令来安装 redis接口    gem貌似是ruby的一个工具包  反正没错就是了。

  gem install redis    //等一会儿就好了

  当然,方便操作,两台Server都要安装。

 

  上面的步骤完事了,接下来运行一下redis-trib.rb

    /usr/local/redis/src/redis-trib.rb

 

Usage: redis-trib

  reshard        host:port
                  --to
                  --yes
                  --slots
                  --from
  check          host:port
  call            host:port command arg arg .. arg
  set-timeout    host:port milliseconds
  add-node        new_host:new_port existing_host:existing_port
                  --master-id
                  --slave
  del-node        host:port node_id
  fix            host:port
  import          host:port
                  --from
  help            (show this help)
  create          host1:port1 ... hostN:portN
                  --replicas

For check, fix, reshard, del-node, set-timeout you can specify the host and port of any working node in the cluster.

 

    看到这,应该明白了吧, 就是靠上面这些操作 完成redis集群搭建的.

    确认所有的节点都启动,接下来使用参数create 创建    (在Server1中来创建)

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Implementierung eines Redis-Clusters mit ThinkPHP6 Implementierung eines Redis-Clusters mit ThinkPHP6 Jun 20, 2023 am 08:36 AM

Mit der rasanten Entwicklung des Internets ist das Problem der hohen Parallelität immer wichtiger geworden. Als Reaktion auf dieses Problem ist das Aufkommen von Redis zu einer wichtigen Lösung geworden. Es löst das Problem des übermäßigen Lese- und Schreibdrucks in herkömmlichen relationalen Datenbanken durch Lesen und Schreiben im Speicher. Allerdings weist Redis mit einem einzelnen Knoten unter Bedingungen hoher Parallelität immer noch Leistungsengpässe auf, sodass Redis-Cluster verwendet werden müssen. In diesem Artikel wird beschrieben, wie Sie mit ThinkPHP6 einen Redis-Cluster implementieren. 1. Einführung in den Redis-Cluster Redis-Cluster ist ein offizieller Cluster, der von Redis bereitgestellt wird.

Redis- und Node.js-Clusterlösung: So erreichen Sie Hochverfügbarkeit Redis- und Node.js-Clusterlösung: So erreichen Sie Hochverfügbarkeit Jul 29, 2023 pm 05:42 PM

Clusterlösung für Redis und Node.js: So erreichen Sie Hochverfügbarkeit Einführung: Mit der rasanten Entwicklung des Internets ist die Datenverarbeitung immer umfangreicher und komplexer geworden. Um eine hohe Verfügbarkeit und Skalierbarkeit des Systems sicherzustellen, müssen wir eine verteilte Clusterarchitektur verwenden, um den Anforderungen der Speicherung und Verarbeitung großer Datenmengen gerecht zu werden. Als leistungsstarke In-Memory-Datenbank kann Redis in Kombination mit Node.js als Back-End-Programmiersprache eine hochverfügbare verteilte Clusterlösung aufbauen. In diesem Artikel wird erläutert, wie Redis und Node.js zur Implementierung verwendet werden

Redis-Cluster in Redis und wie man PHP verwendet Redis-Cluster in Redis und wie man PHP verwendet May 15, 2023 pm 03:22 PM

Redis ist eine leistungsstarke In-Memory-Speicherdatenbank für Schlüssel-Wert-Paare. Es bietet eine höhere Leistung und bessere Skalierbarkeit als herkömmliche RDBMS (relationales Datenbankverwaltungssystem). Einer der Vorteile von Redis besteht darin, dass es als Kerntechnologie verteilter Systeme verwendet werden kann. In diesem Artikel werden wir das Konzept von Redis Cluster und die Verwendung von Redis Cluster in PHP untersuchen. Was ist ein Redis-Cluster? Einfach ausgedrückt ist ein Redis-Cluster eine Ansammlung mehrerer Redis-Instanzen. Der Redis-Cluster ermöglicht es uns

Wie implementiert man die Clusterbereitstellung des PHP-Datencaches über Redis? Wie implementiert man die Clusterbereitstellung des PHP-Datencaches über Redis? Aug 10, 2023 am 08:13 AM

Wie implementiert man die Clusterbereitstellung des PHP-Datencaches über Redis? Einführung: Wenn PHP-Anwendungen mit hoher Parallelität und großem Datenverkehr konfrontiert sind, kommt es häufig zu Engpässen bei der Datenbankleistung. Zu diesem Zeitpunkt kann die Verwendung der Caching-Technologie die Leistung und Parallelität des Systems erheblich verbessern. Als leistungsstarke In-Memory-Schlüsselwertdatenbank wird Redis häufig bei der Implementierung von Caching-Lösungen eingesetzt. In diesem Artikel wird erläutert, wie Sie die Clusterbereitstellung des PHP-Datencaches über Redis implementieren, um die Leistung und Skalierbarkeit weiter zu verbessern. 1. Überblick über den Redis-Cluster Redis

Lernen Sie Datenbankfunktionen in der Go-Sprache und implementieren Sie Lese- und Schreibvorgänge im Redis-Cluster Lernen Sie Datenbankfunktionen in der Go-Sprache und implementieren Sie Lese- und Schreibvorgänge im Redis-Cluster Jul 29, 2023 pm 12:21 PM

Lernen Sie die Datenbankfunktionen in der Go-Sprache und implementieren Sie Lese- und Schreibvorgänge im Redis-Cluster. Einführung: Datenbanken sind ein unverzichtbarer Bestandteil heutiger Internetanwendungen, und die Go-Sprache verfügt als einfache und effiziente Programmiersprache auch über gute Datenbankbetriebsfunktionen. In diesem Artikel wird erläutert, wie Sie Datenbankfunktionen in der Go-Sprache verwenden und Lese- und Schreibvorgänge im Redis-Cluster implementieren. 1. Datenbankfunktionen in der Go-Sprache Datenbankoperationen in der Go-Sprache werden hauptsächlich über das Datenbank-/SQL-Paket implementiert. Dieses Paket stellt grundlegende Daten bereit

Redis- und PHP-Clusterlösung: So erreichen Sie hohe Verfügbarkeit und Skalierbarkeit Redis- und PHP-Clusterlösung: So erreichen Sie hohe Verfügbarkeit und Skalierbarkeit Jul 30, 2023 pm 08:51 PM

Clusterlösung von Redis und PHP: So erreichen Sie hohe Verfügbarkeit und Skalierbarkeit Einführung: Redis ist eine Open-Source-Hochleistungs-In-Memory-Datenbank, die häufig zum Erstellen schneller und skalierbarer Anwendungen verwendet wird. Als beliebte serverseitige Skriptsprache kann PHP mit Redis verwendet werden, um Clusterlösungen mit hoher Verfügbarkeit und Skalierbarkeit zu erreichen. In diesem Artikel wird die Verwendung von Redis und PHP zum Aufbau eines hochverfügbaren und skalierbaren Clusters vorgestellt und anhand von Codebeispielen ausführlich erläutert. 1. Aufbau, Installation und Konfiguration des Redis-Clusters Re

So verwenden Sie die Sprachen Redis und Julia, um hochverfügbare Clusterfunktionen zu implementieren So verwenden Sie die Sprachen Redis und Julia, um hochverfügbare Clusterfunktionen zu implementieren Sep 20, 2023 am 10:58 AM

So implementieren Sie mit den Sprachen Redis und Julia hochverfügbare Clusterfunktionen. Einführung: Mit der Entwicklung des Internetgeschäfts werden die Anforderungen an die Systemverfügbarkeit immer höher. Um sicherzustellen, dass Systeme im Falle eines Ausfalls weiterhin Dienste bereitstellen können, ist Hochverfügbarkeit in verschiedenen Branchen zu einer der zentralen Anforderungen geworden. In diesem Artikel wird die Verwendung der Redis- und Julia-Sprachen zur Implementierung hochverfügbarer Clusterfunktionen vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Was ist ein Hochverfügbarkeitscluster? Ein Hochverfügbarkeitscluster organisiert mehrere Knoten zu einem Gesamtsystem.

Redis-Cluster-Erweiterungsplan und Implementierungsdetails Redis-Cluster-Erweiterungsplan und Implementierungsdetails Jun 21, 2023 am 10:58 AM

Redis ist ein leistungsstarker Open-Source-Speicherdatenspeicherdienst, der aufgrund seiner schnellen Lese- und Schreibgeschwindigkeit, der dauerhaften Speicherung und der Unterstützung mehrerer Datenstrukturen zunehmend beliebt ist. Da das Unternehmen weiter wächst, kann die Speicherkapazität von Redis die Nachfrage nicht mehr decken und muss erweitert werden. In diesem Artikel werden der Redis-Cluster-Erweiterungsplan und seine Implementierungsdetails vorgestellt. Das Konzept des Redis-Clusters Redis-Cluster bezieht sich auf die Verbindung mehrerer Redis-Instanzen zu einem großen Satz von Redis-Instanzen, wodurch Redis verbessert werden kann

See all articles