redis 连接 配置 timeout: pt1s_SpringBoot2搭配Redis实现缓存

前言

什么是Redis

Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。

参考文档:https://www.redis.net.cn/

为什么选择Redis

这个问题一般人会拿Redis和Memcache来做比较,但是个人认为这两者对比并不合适,因为Memcache仅仅作为缓存,而Redis是一个NoSQL数据库,除了缓存还能做其他的很多事。所以拿来对比的同学应该就只是拿Redis来做缓存用了。但是Redis还有很多高级功能,包括持久化、复制、哨兵、集群等。因此Redis的用途更为广泛。

1.添加Redis依赖

之前的文章中我们讲到数据库连接池的作用,有太多的有点了,所以今天在Redis这边我们也建立一个连接池来连接Redis。提高资源的利用率。在此采用的org.apache.commons.pool2来作为池,因此需要对添加一个池依赖。

打开pom.xml文件,添加

org.apache.commons

commons-pool2

org.springframework.boot

spring-boot-starter-data-redis

如图:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在 Kubernetes 集群中部署 Redis 集群,您需要使用 StatefulSet 来确保每个 Redis 节点都有唯一的名称和稳定的网络标识符。以下是一些基本步骤和配置文件示例: 1. 创建一个 ConfigMap 来存储 Redis配置文件。 ``` apiVersion: v1 kind: ConfigMap metadata: name: redis-config data: redis.conf: | bind 0.0.0.0 port 6379 cluster-enabled yes cluster-config-file /data/nodes.conf cluster-node-timeout 5000 appendonly yes ``` 2. 创建一个 Headless Service 来让每个 Redis Pod 都有唯一的 DNS 名称。 ``` apiVersion: v1 kind: Service metadata: name: redis spec: clusterIP: None selector: app: redis ports: - name: redis port: 6379 ``` 3. 创建一个 StatefulSet 来部署 Redis 集群。 ``` apiVersion: apps/v1 kind: StatefulSet metadata: name: redis spec: serviceName: redis replicas: 3 selector: matchLabels: app: redis template: metadata: labels: app: redis spec: containers: - name: redis image: redis:5.0.5-alpine command: - sh - -c - "redis-server /usr/local/etc/redis/redis.conf" ports: - name: redis containerPort: 6379 volumeMounts: - name: data mountPath: /data - name: config mountPath: /usr/local/etc/redis/ volumes: - name: data emptyDir: {} - name: config configMap: name: redis-config items: - key: redis.conf path: redis.conf volumeClaimTemplates: - metadata: name: data spec: accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 1Gi ``` 在这个配置文件中,我们定义了一个有 3 个 Pod 的 StatefulSet,每个 Pod 使用 Redis 5.0.5-alpine 镜像,并且挂载了一个名为 `data` 的 PersistentVolumeClaim 来存储 Redis 数据。我们还定义了一个名为 `config` 的 ConfigMap,其中包含 Redis配置文件。最后,我们将 `serviceName` 设置为 `redis`,这将确保每个 Pod 都有唯一的 DNS 名称。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值