環(huán)境信息
-購買操作系統(tǒng)選擇centos7(7的任何一個版本都可以),如果選錯了可以在阿里云管理面板的-更多--云盤和鏡像--更換操作系統(tǒng)宛畦。
在阿里云購買ecs-購買后機(jī)器網(wǎng)卡環(huán)境:
公網(wǎng)IP-8.134.80.143邻梆、內(nèi)網(wǎng)IP-172.30.40.95
設(shè)置阿里云端口映射:
開放1個端口
6379:redis調(diào)用端口
配置入口-->安全組-->配置規(guī)則
點(diǎn)擊手動添加奔誓,添加6379端口
開始安裝
安裝預(yù)備環(huán)境
yum install -y gcc
image.png
下載解壓
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
tar -zxvf redis-5.0.3.tar.gz
image.png
編譯-安裝
進(jìn)入目錄
cd redis-5.0.3
編譯-安裝
make && make install PREFIX=/usr/local/redis
image.png
修改配置文件
復(fù)制
cp /root/redis-5.0.3/redis.conf /usr/local/redis/bin/
復(fù)制文件后vim進(jìn)行修改,改2個參數(shù)
bind 0.0.0.0
protected-mode no
vim /usr/local/redis/bin/redis.conf
image.png
啟動redis
/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
image.png
SpringBoot接入調(diào)用
引用
pom文件引入
<!--redis-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
配置文件application.yaml 的redis參數(shù)
內(nèi)容(8.134.80.143是阿里云公網(wǎng)IP):
spring:
redis:
database: 0
host: 8.134.80.143
port: 6379
password:
pool:
max-active: 1000
max-wait: -1
min-idle: 1
max-idle: 40
創(chuàng)建redis操作和測試類
接口類-IRedisService:
import java.util.Map;
public interface IRedisService {
// 加入元素
void setValue(String key, Map<String, Object> value);
// 加入元素
void setValue(String key, String value);
// 加入元素
void setValue(String key, Object value);
// 獲取元素
Object getMapValue(String key);
// 獲取元素
Object getValue(String key);
}
操作實(shí)現(xiàn)類-RedisServiceImpl:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.core.ValueOperations;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@Service
public class RedisServiceImpl implements IRedisService {
@Autowired
private StringRedisTemplate stringRedisTemplate;
@Autowired
private RedisTemplate redisTemplate;
@Override
public void setValue(String key, Map<String, Object> value) {
ValueOperations<String, Object> vo = redisTemplate.opsForValue();
vo.set(key, value);
redisTemplate.expire(key, 1, TimeUnit.HOURS); // 這里指的是1小時后失效
}
@Override
public Object getValue(String key) {
ValueOperations<String, String> vo = redisTemplate.opsForValue();
return vo.get(key);
}
@Override
public void setValue(String key, String value) {
ValueOperations<String, Object> vo = redisTemplate.opsForValue();
vo.set(key, value);
redisTemplate.expire(key, 1, TimeUnit.HOURS); // 這里指的是1小時后失效
}
@Override
public void setValue(String key, Object value) {
ValueOperations<String, Object> vo = redisTemplate.opsForValue();
vo.set(key, value);
redisTemplate.expire(key, 1, TimeUnit.HOURS); // 這里指的是1小時后失效
}
@Override
public Object getMapValue(String key) {
ValueOperations<String, String> vo = redisTemplate.opsForValue();
return vo.get(key);
}
}
redis的controller測試類-RedisController:
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.kafka.core.KafkaTemplate;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@RestController
public class RedisController {
@Autowired
private IRedisService iRedisService;
private String testKey = "RUEIIE000121";
@RequestMapping("redisSend")
public String send(String info){
log.info(info);
iRedisService.setValue(testKey, info);
return "發(fā)送成功";
}
@RequestMapping("redisGet")
public String get(){
String info = (String) iRedisService.getValue(testKey);
return info;
}
}
測試
啟動項(xiàng)目
測試發(fā)送數(shù)據(jù)
瀏覽器訪問:http://localhost:8080/redisSend?info=123456
測試發(fā)送123456到redis然爆。
測試獲取數(shù)據(jù)
瀏覽器訪問:http://localhost:8080/redisGet
測試讀取redis數(shù)據(jù)站粟。
測試成功,部署調(diào)用完成曾雕。