日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達者為師

網(wǎng)站首頁 編程語言 正文

一文搞懂阿里云服務(wù)器部署Redis并整合Spring?Boot_Redis

作者:Bug?終結(jié)者 ? 更新時間: 2022-11-16 編程語言

一、什么是Redis

redis是一個key-value存儲系統(tǒng)。和Memcached類似,它支持存儲的value類型相對更多,包括string(字符串)、list(鏈表)、set(集合)、zset(sorted set --有序集合)和hash(哈希類型)。這些數(shù)據(jù)類型都支持push/pop、add/remove及取交集并集和差集及更豐富的操作,而且這些操作都是原子性的。在此基礎(chǔ)上,redis支持各種不同方式的排序。與memcached一樣,為了保證效率,數(shù)據(jù)都是緩存在內(nèi)存中。區(qū)別的是redis會周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實現(xiàn)了master-slave(主從)同步。

Redis是一個NoSQL數(shù)據(jù)庫

不僅僅是數(shù)據(jù)庫!

二、Redis的優(yōu)缺點

優(yōu)點:

  • 讀寫性能非常好,Redis讀的速度是 110000次/s ,寫的速度是 81000次/s
  • 支持?jǐn)?shù)據(jù)持久化,AOF和RDB兩種持久化方式
  • 支持事務(wù),事務(wù)是原子性的
  • 數(shù)據(jù)結(jié)構(gòu)豐富,支持多種數(shù)據(jù)結(jié)構(gòu)(String、List、Set、Hash、ZSet、HyperLogLog、Bitmaps、Geospatial等)
  • 支持主從復(fù)制、讀寫分離

缺點:

  • 數(shù)據(jù)庫容量受到物理內(nèi)存的限制,不能用作海量數(shù)據(jù)的高性能讀寫,因此Redis適合的場景主要局限在較小數(shù)據(jù)量的高性能操作和運算上。
  • Redis 不具備自動容錯和恢復(fù)功能,主機從機的宕機都會導(dǎo)致前端部分讀寫請求失敗,需要等待機器重啟或者手動切換前端的IP才能恢復(fù)。
  • 主機宕機前,無法完全將數(shù)據(jù)同步到從機,切換ip后會導(dǎo)致數(shù)據(jù)不一致問題,降低可用性

但優(yōu)點還是大于缺點的,Redis是單線程的、基于key-value的,速度極快,可以提高系統(tǒng)的可用性,具有更好的高并發(fā)吞吐量能力~

三、阿里云服務(wù)器部署安裝Redis

??在Linux服務(wù)器新建文件夾存放Redis

進入 /usr/local/,新建redis目錄

mkdir redis

下載redis

wget http://download.redis.io/releases/redis-5.0.7.tar.gz

解壓剛剛下載的redis

tar -zvxf redis-5.0.7.tar.gz

查看目錄文件;

ll

輸入命令編譯文件

make

輸入命令安裝:

make PREFIX=/usr/local/redi

此命令會生成啟動文件:

進入bin目錄創(chuàng)建conf配置文件目錄

cd bin
mkdir conf

將配置文件復(fù)制到bin目錄內(nèi):

cp /usr/local/redis/redis-5.0.7/redis.conf config/

進入bin目錄啟動redis;

./redis-server # 啟動服務(wù)

?測試連接

啟動客戶端:

./redis-cli		# 啟動客戶端

連接成功!

四、關(guān)閉防火墻,配置Redis訪問端口

?配置Redis

進入Redis安裝目錄:

cd /usr/local/redis/redis-5.0.7/bin/config

打開配置文件:

vim redis.conf

修改如下:

保存并退出:

esc
:wq

?關(guān)閉防火墻

查詢80端口是否啟動:

firewall-cmd --query-port=80/tcp

可以看到,未啟動

關(guān)閉Linux防火墻:

systemctl status firewalld

?阿里云控制臺添加6379接口訪問

五、Spring Boot 整合 Redis

新建基于Maven管理的Spring Boot項目,整合Redis,實現(xiàn)遠程連接阿里云服務(wù)器測試!

??項目結(jié)構(gòu)

導(dǎo)入依賴:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
    <exclusions>
        <exclusion>
            <groupId>io.lettuce</groupId>
            <artifactId>lettuce-core</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
</dependency>

?核心源碼

測試類:

package com.wanshi.test;

import com.wanshi.MainApplication;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith(SpringRunner.class)
@SpringBootTest(classes = MainApplication.class)
public class Test1 {

    @Autowired
    private StringRedisTemplate redisTemplate;

    @Test
    public void t1() {
        redisTemplate.opsForValue().set("xiaowang", "hello");
        String xiaowang = redisTemplate.opsForValue().get("xiaowang");
        System.out.println(xiaowang);
    }
}

??測試結(jié)果

執(zhí)行結(jié)果:

總結(jié)

Redis是一個NoSQL非關(guān)系型數(shù)據(jù)庫,性能非常好,讀寫速度秒殺所有數(shù)據(jù)庫,可以說是性能最好的數(shù)據(jù)庫,Redis支持主從復(fù)制,緩存,底層采用key-value形式存儲數(shù)據(jù),速度非常快,性能很好,推薦使用,目前大部分企業(yè)都在使用Redis!

原文鏈接:https://blog.csdn.net/weixin_45526437/article/details/123901841

欄目分類
最近更新