最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Redis整合MySQL主從集群的示例代碼

 更新時(shí)間:2021年09月28日 10:35:46   作者:別團(tuán)等shy哥發(fā)育  
本文主要介紹了Redis整合MySQL主從集群的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Redis作為承擔(dān)緩存作用的數(shù)據(jù)庫(kù),一般會(huì)應(yīng)用在高并發(fā)的場(chǎng)景里,而在這些高并發(fā)應(yīng)用場(chǎng)景的數(shù)據(jù)庫(kù)層面還會(huì)用到其他數(shù)據(jù)庫(kù)的組件或集群以提升性能,比如用MySQL主從集群實(shí)現(xiàn)讀寫(xiě)分離效果、用MyCAT組件實(shí)現(xiàn)分庫(kù)分表的功能。另外,Redis本身會(huì)以集群的形式對(duì)外提供緩存服務(wù)。

1、用Docker搭建MySQL主從集群

這里用Docker容器搭建如下圖所示的MySQL主從集群。

在這里插入圖片描述

  • 在主MySQL服務(wù)器里操作的動(dòng)作會(huì)自動(dòng)同步到從nysql服務(wù)器,比如在主服務(wù)器里發(fā)起的“建數(shù)據(jù)庫(kù)”“通過(guò)insert語(yǔ)句插入數(shù)據(jù)”和“通過(guò)delete語(yǔ)句刪除數(shù)據(jù)”的動(dòng)作都會(huì)同步到從服務(wù)器,并且這些操作都會(huì)在從服務(wù)器上被執(zhí)行。通過(guò)這種同步的動(dòng)作能確保主從數(shù)據(jù)庫(kù)間的數(shù)據(jù)一致性。
  • 在項(xiàng)目里,一般是向“主服務(wù)器”里寫(xiě)數(shù)據(jù),從“從服務(wù)器”里讀數(shù)據(jù),用這種“讀寫(xiě)分離”的操作方式提升數(shù)據(jù)庫(kù)性能。

具體搭建的步驟如下:

1.1 拉取mysql鏡像

  開(kāi)啟一個(gè)命令窗口,在其中運(yùn)行docker pull mysql:latest,下載最新的mysql鏡像。下載完成后,通過(guò)docker images mysql能看到如下圖所示的鏡像i信息。

在這里插入圖片描述

1.2 創(chuàng)建配置文件夾

新建/root/redisconf/masterMySQL/conf/root/redisconf/masterMySQL/data兩個(gè)目錄,在其中將會(huì)保存主mysql服務(wù)器的配置信息和數(shù)據(jù)。同時(shí)新建/root/redisconf/slaveMySQL/conf/root/redisconf/slaveMySQL/data兩個(gè)目錄,在其中將會(huì)保存從MySQL服務(wù)器的配置信息和數(shù)據(jù)。當(dāng)然,目錄可自行更改。

1.3 編寫(xiě)主服務(wù)器的配置文件信息

  在/root/redisconf/masterMySQL/conf目錄里新建一個(gè)my.cnf文件,在其中編寫(xiě)針對(duì)主mysql服務(wù)器的配置信息,主mysql服務(wù)器在啟動(dòng)時(shí)會(huì)讀取其中的配置,具體代碼如下所示:

[mysqld]
pid-file =/var/run/mysqld/mysqld.pid
socket =/var/run/mysqld/mysqld.sock
datadir =/var/lib/mysql
server-id =1
log-bin=mysql-master-bin

  第二行到第四行給出了MYSQL運(yùn)行時(shí)的參數(shù),在第五行里定義了該服務(wù)器的id(這個(gè)id需要和之后編寫(xiě)的從MySQL服務(wù)器的server-id不一樣,否則會(huì)出錯(cuò)),在第6行里制定了二進(jìn)制文件的名字(為了搭建主從集群,建議加上這行配置)

1.4 啟動(dòng)mysql主服務(wù)器的容器

docker run -itd --privileged=true -p 3306:3306 \
--name myMasterMysql -e MYSQL_ROOT_PASSWORD=123456\
-v /root/redisconf/masterMySQL/conf:/etc/mysql/conf.d\
 -v /root/redisconf/masterMySQL/data:/var/lib/mysql mysql:latest

-p3306:3306參數(shù)指定Docker容器里MySQL的工作端口3306映射到主機(jī)的3306端口
-itd參數(shù)指定該容器以后臺(tái)交互模式的方式啟動(dòng)
--name參數(shù)指定該容器的名字
通過(guò)-e MYSQL_ROOT_PASSWORD=123456參數(shù)指定該容器運(yùn)行時(shí)的環(huán)境變量,具體到這個(gè)場(chǎng)景,配置以用戶名root登錄到MySQL服務(wù)器時(shí)所用到的密碼123456.
兩個(gè)-v參數(shù)指定外部主機(jī)和Docker容器間映射的目錄。由于在第三步把MySQL啟動(dòng)時(shí)需要加載的my.cnf文件放在了/root/redisconf/masterMySQL/conf目錄里,因此這里需要把/root/redisconf/masterMySQL/conf目錄映射成容器內(nèi)部MYSQL服務(wù)器的相關(guān)路徑。
通過(guò)mysql:latest參數(shù)指定該容器是基于這個(gè)鏡像生成的。

查看啟動(dòng)的容器:docker ps

在這里插入圖片描述

由此能確認(rèn)myMasterMysql啟動(dòng)成功。
查看該Docker容器的IP地址:docker inspect myMasterMysql

在這里插入圖片描述

可以看到,這里是172.17.0.2,這也是主mysql服務(wù)器所在的Ip地址。

1.5 觀察主服務(wù)器狀態(tài)

  運(yùn)行docker exec -it myMasterMysql /bin/bash命令后進(jìn)入該myMasterMysql容器的命令行窗口,再運(yùn)行mysql -u root -p命令,進(jìn)入MYSQL服務(wù)器的命令行窗口,在這個(gè)Mysql命令里,以-u參數(shù)指定用戶名,隨后需要輸入密碼(剛才設(shè)置的123456).

進(jìn)入mysql服務(wù)器之后,再運(yùn)行show master status命令觀察主服務(wù)器的狀態(tài)。

在這里插入圖片描述  

可以看到,主從集群同步所用到的日志文件是mysql-master-bin.000003,當(dāng)前同步的位置是156,每次運(yùn)行這個(gè)命令看到的結(jié)果未必相同,請(qǐng)記住這兩個(gè)值,在設(shè)置從mysql服務(wù)器的主從同步關(guān)系時(shí)會(huì)用到。

1.6 配置mysql從服務(wù)器

  在/root/redisconf/slaveMaster/conf目錄里,新建一個(gè)名為my.cnf的文件,編寫(xiě)針對(duì)從MYSQL服務(wù)器的配置信息。同樣的,從Mysql服務(wù)器在啟動(dòng)時(shí)也會(huì)讀取其中的配置,具體代碼如下所示。

[mysqld]
pid-file=/var/run/mysqld/mysqld.pid
socket=/var/run/mysqld/mysqld.sock
datadir=/var/lib/mysql
server-id=2
log-bin=mysql-slave-bin

  該配置文件和第三步創(chuàng)建的主服務(wù)器的配置文件很相似,只不過(guò)在第5行更改了server-id(這里的取值不能和主mysql服務(wù)器的一致)。在第6行也是設(shè)置二進(jìn)制文件的名字

1.7 啟動(dòng)mysql從服務(wù)器

docker run -itd --privileged=true -p 3316:3306\
 --name mySlaveMysql -e MYSQL_ROOT_PASSWORD=123456\
 -v /root/redisconf/slaveMySQL/conf:/etc/mysql/conf.d\
 -v /root/redisconf/slaveMySQL/data:/var/lib/mysql\
  mysql:latest

  這里在-p參數(shù)之后使用主機(jī)的3316端口映射Docker容器的3306端口,因?yàn)橹爸鱩ysql服務(wù)器的Docker容器已經(jīng)映射到了3306端口,其他的參數(shù)和之前創(chuàng)建myMasterMysql容器時(shí)很相似,就不再重復(fù)了。

  隨后docker exec -it mySlaveMysql /bin/bash進(jìn)入容器,進(jìn)入后可以運(yùn)行mysql -h 172.17.0.2 -u root -p命令,嘗試在這個(gè)容器里連接主MySQL服務(wù)器。其中172.17.0.2是主服務(wù)器的地址。隨后輸入root用戶的密碼123456,即可確認(rèn)連接。

在這里插入圖片描述

  確認(rèn)鏈接后,通過(guò)exit命令退出指向myMasterMysql的連接,再通過(guò)mysql -h 127.0.0.1 -u root -p命令連接到本Docker容器包含的從MySQL服務(wù)器上。

1.8 確認(rèn)主從關(guān)系

change master to master_host='172.17.0.2',master_port=3306,\
master_user='root',master_password='123456',\
master_log_pos=156,\
master_log_file='mysql-master-bin.000003';

   本命令運(yùn)行在mySlaveMysql容器中的從Mysql服務(wù)器里,通過(guò)master_host和master_port指定主服務(wù)器的ip地址和端口號(hào),通過(guò)master_user和master_password設(shè)置了連接所用的用戶名和密碼。
  注意master_logpos和master_log_file兩個(gè)參數(shù)的值需要和第5步圖中的結(jié)果一致。

  運(yùn)行完成后,需要再運(yùn)行start slave命令啟動(dòng)主從復(fù)制的動(dòng)作。運(yùn)行后可以通過(guò)show slave status\G;命令查看主從復(fù)制的狀態(tài),如果Slave_IO_Running和Slave_SQL_Running這兩項(xiàng)都是Yes,并且沒(méi)有其他異常,就說(shuō)明配置主從復(fù)制成功。

在這里插入圖片描述

  此時(shí)如果再到主mysql服務(wù)器里運(yùn)行create database redisDemo創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),那么從庫(kù)里雖然沒(méi)有運(yùn)行命令,但是也能看到redisDemo數(shù)據(jù)庫(kù),這說(shuō)明已經(jīng)成功地搭建了MySQL主從復(fù)制集群。其中,主庫(kù)地IP地址和端口號(hào)是172.17.0.2:3306,從庫(kù)是172.17.0.3:3306.

主庫(kù)

在這里插入圖片描述

從庫(kù)

在這里插入圖片描述

2、準(zhǔn)備數(shù)據(jù)

  由于已經(jīng)成功地設(shè)置了主從復(fù)制模式,因此如下地建表和插入語(yǔ)句都只需要在主庫(kù)里運(yùn)行。

2.1 創(chuàng)建數(shù)據(jù)庫(kù)

create database redisDemo

進(jìn)入redisDemo數(shù)據(jù)庫(kù)use redisDemo

2.2 創(chuàng)建student數(shù)據(jù)表

create table student(
    id int not null primary key,
    name char(20),
     age int,
     score float
    );

在這里插入圖片描述

2.3 向student表插入幾條數(shù)據(jù)

insert into student(id,name,age,score) values(1,'Peter',18,100);
insert into student(id,name,age,score) values(2,'Tom',17,98);
insert into student(id,name,age,score) values(3,'John',17,99);

在這里插入圖片描述

從庫(kù)里查看

在這里插入圖片描述

3、用Java代碼讀寫(xiě)MySQL集群和Redis

3.1 引入redis和mysql依賴

   <!-- https://mvnrepository.com/artifact/redis.clients/jedis -->
        <dependency>
            <groupId>redis.clients</groupId>
            <artifactId>jedis</artifactId>
            <version>3.3.0</version>
        </dependency>

        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.21</version>
        </dependency>

在這里插入圖片描述

  Java應(yīng)用程序是向主mySQL服務(wù)器寫(xiě)數(shù)據(jù),這樣寫(xiě)入地?cái)?shù)據(jù)會(huì)自動(dòng)同步到從mysql服務(wù)器上,而讀數(shù)據(jù)時(shí)會(huì)先從Redis緩存里讀,讀不到時(shí)再到從mysql里讀。以下用代碼實(shí)現(xiàn)

3.2 代碼整合

MySQLClusterDemo.java

import redis.clients.jedis.Jedis;
import java.sql.*;
public class MySQLClusterDemo {
    //創(chuàng)建操作Redis和數(shù)據(jù)庫(kù)的對(duì)象
    private Jedis jedis;
    private Connection masterConn;  //連接主庫(kù)的對(duì)象
    private Connection slaveConn;   //連接從庫(kù)的對(duì)象
    PreparedStatement masterPs=null;    //對(duì)主庫(kù)進(jìn)行操作的對(duì)象
    PreparedStatement slavePs=null;     //對(duì)從庫(kù)進(jìn)行操作的對(duì)象
    //初始化環(huán)境
    private void init(){
        //MYSQL的連接參數(shù)
        String mySQLDriver="com.mysql.cj.jdbc.Driver";
        String masterUrl="jdbc:mysql://192.168.159.33:3306/redisDemo?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
        String slaveUrl="jdbc:mysql://192.168.159.33:3316/redisDemo?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
        String user="root";
        String pwd="123456";
        try{
            Class.forName(mySQLDriver);
            masterConn= DriverManager.getConnection(masterUrl,user,pwd);
            slaveConn= DriverManager.getConnection(slaveUrl,user,pwd);
            jedis=new Jedis("192.168.159.33",6379);
        }catch (SQLException e){
            e.printStackTrace();
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    private void insertData(){
        //是向主MySQL服務(wù)器插入數(shù)據(jù)
        try{
        masterPs=masterConn.prepareStatement("insert into student(id,name,age,score) values(10,'Frank',18,100)");
        masterPs.executeUpdate();
        }catch (SQLException e){
            e.printStackTrace();
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    private String getNameByID(String id){
        String key="Stu"+id;
        String name="";
        //如果存在于Redis,就先從Redis里獲取
        if(jedis.exists(key)){
            System.out.println("ID:"+key+" exists in Redis");
            name=jedis.get(key);
            System.out.println("Name is :"+jedis.get(key));
            return name;
        }else{  //如果沒(méi)在Redis里,就到從MySQL里去讀
            try {
                slavePs=slaveConn.prepareStatement("select name from student where id=10");
                ResultSet rs=slavePs.executeQuery();
                if(rs.next()){
                    System.out.println("ID: "+key+" exists in Slave MySQL");
                    name=rs.getString("name");
                    System.out.println("Name is: "+name);
                    //放入Redis緩存
                    jedis.set(key,name);
                }
                return name;
            }catch (SQLException e){
                e.printStackTrace();
            }catch (Exception e){
                e.printStackTrace();
            }
        }
        return name;
    }

    public static void main(String[] args) {
        MySQLClusterDemo tool=new MySQLClusterDemo();
        tool.init();
        tool.insertData();
        //場(chǎng)景1 沒(méi)有從Redis中找到,就到從MySQL服務(wù)器中去讀
        System.out.println(tool.getNameByID("10"));
        //場(chǎng)景2,當(dāng)前ID=10的數(shù)據(jù)已存在于Redis,所有直接讀緩存
        System.out.println(tool.getNameByID("10"));
    }
}

運(yùn)行結(jié)果

在這里插入圖片描述

4、MySQL主從集群整合Redis主從集群

  上面的mysql主從集群至整合了一個(gè)Redis主機(jī),在這種模式里如果Redis服務(wù)器失效了,那么整個(gè)緩存可能都會(huì)失效??梢栽诖位A(chǔ)上引入Redis主從復(fù)制集群,以提升緩存的可用性以及性能,改進(jìn)后的框架圖如下所示。

在這里插入圖片描述

應(yīng)用程序同樣是向主mysql服務(wù)器里寫(xiě)數(shù)據(jù),這些數(shù)據(jù)同步到從mysql數(shù)據(jù)庫(kù)里。

應(yīng)用程序先到“從Redis服務(wù)器”里讀取緩存,如果找不到,就再到從mysql數(shù)據(jù)庫(kù)里去讀。

如果從“從mysql數(shù)據(jù)庫(kù)”里讀到數(shù)據(jù),那么需要寫(xiě)入“主Redis”,而根據(jù)Redis集群的主從復(fù)制機(jī)制,該數(shù)據(jù)會(huì)被寫(xiě)入“從Redis服務(wù)器”。這種針對(duì)Redis集群的讀寫(xiě)分離機(jī)制能提升讀寫(xiě)緩存的性能。

4.1 搭建Redis主從復(fù)制集群

4.1.1 創(chuàng)建redis-master容器

docker run -itd --name redis-master -p 6379:6379 redis:latest

在這里插入圖片描述

4.1.2 創(chuàng)建resis-slave容器

docker run -itd --name redis-slave -p 6380:6379 redis:latest

在這里插入圖片描述

4.1.3 查看redis服務(wù)器的ip

docker inspect redis-master

在這里插入圖片描述

可以看到,redis-master的ip地址為172.17.0.4

4.1.4 主從配置

  在redis-slave容器的窗口里,通過(guò)docker exec -it redis-slave /bin/bash命令進(jìn)入容器的命令行窗口。運(yùn)行如下的slaveof命令,指定當(dāng)前服務(wù)器為從服務(wù)器,該命令的格式是slaveof IP地址 端口號(hào),這里指向172.17.0.2:6379所在的主服務(wù)器。

slaveof 172.17.0.4 6379

在這里插入圖片描述

運(yùn)行完該命令后,在redis-slave客戶端里再次運(yùn)行info replication

在這里插入圖片描述

  可以看到,該redis-slave已經(jīng)成為從服務(wù)器,從屬于172.17.0.2:6379所在的Redis服務(wù)器。

4.2、代碼整合

MySQLClusterImprovedDemo.java

import redis.clients.jedis.Jedis;
import java.sql.*;
public class MySQLClusterImprovedDemo {
    //創(chuàng)建操作Redis和數(shù)據(jù)庫(kù)的對(duì)象
    private Jedis masterJedis;  //指向主Redis服務(wù)器
    private Jedis slaveJedis;   //指向從Redis服務(wù)器
    private Connection masterConn;  //連接主庫(kù)的對(duì)象
    private Connection slaveConn;   //連接從庫(kù)的對(duì)象
    PreparedStatement masterPs=null;    //對(duì)主庫(kù)進(jìn)行操作的對(duì)象
    PreparedStatement slavePs=null;     //對(duì)從庫(kù)進(jìn)行操作的對(duì)象

    private void init(){
        //MYSQL的連接參數(shù)
        String mySQLDriver="com.mysql.cj.jdbc.Driver";
        String masterUrl="jdbc:mysql://192.168.159.33:3306/redisDemo?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
        String slaveUrl="jdbc:mysql://192.168.159.33:3316/redisDemo?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true";
        String user="root";
        String pwd="123456";
        try{
            Class.forName(mySQLDriver);
            masterConn= DriverManager.getConnection(masterUrl,user,pwd);
            slaveConn= DriverManager.getConnection(slaveUrl,user,pwd);
            masterJedis=new Jedis("192.168.159.33",6379);
            slaveJedis=new Jedis("192.168.159.33",6380);
        }catch (SQLException e){
            e.printStackTrace();
        }catch (Exception e){
            e.printStackTrace();
        }

    }

    private void insertData(){
        //是向主MySQL服務(wù)器插入數(shù)據(jù)
        try{
            masterPs=masterConn.prepareStatement("insert into student(id,name,age,score) values(10,'Frank',18,100)");
            masterPs.executeUpdate();
        }catch (SQLException e){
            e.printStackTrace();
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    private String getNameByID(String id){
        String key="Stu"+id;
        String name="";
        //如果存在于Redis,就先從Redis里獲取
        if(slaveJedis.exists(key)){ //到從Redis服務(wù)器去找
            System.out.println("ID: "+key+" exists in Redis.");
            name=slaveJedis.get(key);//找到后到從Redis里讀
            System.out.println("Name is: "+slaveJedis.get(key));
            return name;
        }else{  //沒(méi)在Redis,就到從MySQL去讀
            try{
                slavePs=slaveConn.prepareStatement("select name from student where id=10");
                ResultSet rs=slavePs.executeQuery();
                if(rs.next())
                {
                    System.out.println("ID: "+key+" exists in Slave MySQL");
                    name=rs.getString("name");
                    System.out.println("Name is: "+name);
                    //放入主Redis緩存
                    masterJedis.set(key,name);
                }
                return name;
            }catch (SQLException e){
                e.printStackTrace();
            }catch (Exception e){
                e.printStackTrace();
            }
        }
        return name;
    }

    public static void main(String[] args) {
        MySQLClusterImprovedDemo tool=new MySQLClusterImprovedDemo();
        tool.init();
        tool.insertData();
        //場(chǎng)景1 在主Redis中沒(méi)有讀到,則到從MySQL服務(wù)器中讀
        System.out.println(tool.getNameByID("10"));
        //場(chǎng)景2 當(dāng)前ID=10已經(jīng)存在于Redis,所以直接讀緩存
        System.out.println(tool.getNameByID("10"));
    }
}

在這里插入圖片描述

   為了突出重點(diǎn),這里我并沒(méi)有設(shè)置“緩存失效時(shí)間”和“防止緩存穿透”等方面的實(shí)施代碼,但是這些要點(diǎn)同樣重要。

到此這篇關(guān)于Redis整合MySQL主從集群的示例代碼的文章就介紹到這了,更多相關(guān)Redis整合MySQL主從集群內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • redis遠(yuǎn)程連接不上的解決辦法

    redis遠(yuǎn)程連接不上的解決辦法

    本文主要介紹了redis遠(yuǎn)程連接不上的解決辦法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 基于Redis實(shí)現(xiàn)抽獎(jiǎng)功能及問(wèn)題小結(jié)

    基于Redis實(shí)現(xiàn)抽獎(jiǎng)功能及問(wèn)題小結(jié)

    這篇文章主要介紹了基于Redis實(shí)現(xiàn)抽獎(jiǎng)功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • Redis中的配置文件,數(shù)據(jù)持久化,事務(wù)

    Redis中的配置文件,數(shù)據(jù)持久化,事務(wù)

    這篇文章主要介紹了Redis中的配置文件,數(shù)據(jù)持久化,事務(wù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。
    2022-12-12
  • Redis @type坑的解決

    Redis @type坑的解決

    新建一個(gè)對(duì)象存入redis中,對(duì)象中會(huì)出現(xiàn)一個(gè)字段@type,本文主要介紹了Redis @type坑的解決,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • redis中hiredis-API函數(shù)的調(diào)用方法

    redis中hiredis-API函數(shù)的調(diào)用方法

    這篇文章主要介紹了redis中hiredis-API函數(shù)的調(diào)用,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧
    2023-09-09
  • Redis如何批量刪除指定模糊的key舉例

    Redis如何批量刪除指定模糊的key舉例

    在實(shí)際項(xiàng)目中,我們可能需要根據(jù)一定的條件來(lái)刪除部分key,這時(shí)候就需要用到模糊刪除操作這,下面篇文章主要給大家介紹了關(guān)于Redis如何批量刪除指定模糊的key的相關(guān)資料,需要的朋友可以參考下
    2024-08-08
  • Redis命令使用技巧之Keys的相關(guān)操作

    Redis命令使用技巧之Keys的相關(guān)操作

    Redis KEYS命令用于搜索具有匹配模式的鍵。下面這篇文章主要給大家介紹了關(guān)于Redis命令使用技巧之Keys的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10
  • Redis字符串類(lèi)型的常用命令小結(jié)

    Redis字符串類(lèi)型的常用命令小結(jié)

    這篇文章給大家整理了在操作Redis字符串類(lèi)型中的常用命令,文章總結(jié)的很全面,對(duì)大家學(xué)習(xí)Redis具有一定的參考借鑒價(jià)值,下面來(lái)一起看看吧。
    2016-09-09
  • Redis 實(shí)現(xiàn)好友關(guān)注和關(guān)注推送的示例代碼

    Redis 實(shí)現(xiàn)好友關(guān)注和關(guān)注推送的示例代碼

    本文介紹了使用Redis實(shí)現(xiàn)好友關(guān)注和關(guān)注推送功能,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2025-03-03
  • Redis擊穿穿透雪崩產(chǎn)生原因分析及解決思路面試

    Redis擊穿穿透雪崩產(chǎn)生原因分析及解決思路面試

    這篇文章主要為大家介紹了Redis擊穿穿透雪崩產(chǎn)生原因及解決思路的面試問(wèn)題答案參考,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進(jìn)步
    2022-03-03

最新評(píng)論

张家界市| 鄂伦春自治旗| 焉耆| 陈巴尔虎旗| 黑河市| 米脂县| 乌拉特后旗| 盘山县| 肇州县| 通城县| 华安县| 通州市| 松原市| 时尚| 民县| 阳原县| 康保县| 苍梧县| 扶绥县| 江安县| 永定县| 富锦市| 陇西县| 青田县| 苗栗市| 紫金县| 礼泉县| 吉安市| 金门县| 寿阳县| 凤翔县| 西峡县| 合水县| 松原市| 汉寿县| 乌拉特前旗| 丰镇市| 麻阳| 武宁县| 吴忠市| 松原市|