Redis 4.x系列(十六):Redis 持久化之 RDB 与 AOF

  Redis 是在内存在存储数据,当服务器重启则会丢失内存中的数据。 为保证数据安全, Redis 提供了对数据持久化的支持,数据持久化是防止数据丢失的最好方法。

  Redis 共有两个数据持久化方式:RDBAOF。持久化功能有效地避免因进程退出造成数据丢失问题,当下次重启时利用之前持久化的文件即可实现数据恢复。

  Redis Persistence 官网Redis persistence demystified(Redis 持久化揭秘)Redis 持久化 –中文译

阅读更多

Redis 4.x系列(十五):Redis 主从复制、调优和故障分析

  为解决单个数据库可能存因系统崩溃、设备异常等单点故障导致整个应用系统无法提供服务的问题,数据库系统提供了复制技术来支持多存储服务的数据复制同步。

  复制机制是读写分离的基础,也是是集群的基础。 Redis 也支持复制机制,可以将一个 Redis 服务器(master,主实例)中的数据复制到其他 Redis 服务器中(slave, 从实例)。

  Redis Replication-官方资料, Redis 复制-中文译

阅读更多

Redis 4.x系列(十四):Spring Boot 在使用 Reids 管道和事务

  在 Java 中使用 Redis,基于 Spring Boot 框架。 关于 Spring Boot 集成 Redis,可阅读Spring Boot 2实践系列(十二):Spring Data Redis 集成详解和使用

  本篇主要演示 Spring Boot 提供的 RedisTemplate 对 Redis 功能特性的使用,主要是管道事务的操作。各种数据类型的操作比较简单。

阅读更多

Redis 4.x系列(十三):Redis 正确的使用 API

  Redis 提供了丰富的 API 来操作数据,某些业务需求不只一个 API 可实现,但实现同一功能的不同的 API 在性能上是不一样的。

  Redis 是内存级别单线程处理请求,对性能非常在乎。正确的使用 API 就显得尤为重要。

阅读更多

Redis 4.x系列(十二):Redis 使用合适数据类型(优化)

  Redis 为满足业务需求提供了丰富的数据类型,在使用时需要注意它们在不同业务场景中的优缺点,还需要考虑选中的数据类型在性能和内存消耗上是否还有优化的空间。

  Redis 对小的聚合类型数据进行了特殊的编码处理。Redis2.2版本及以后,存储集合数据的时候会采用内存压缩技术,以使用更少的内存存储更多的数据。当集合中的元素小于给定的个数,或元素小于给定的最大值时,Redis 会以一种非常有效的内存方式进行编码,最多可节省10倍的内存(平均至少节省5倍)。

  Redis Memory Optimization译文:内存优化

阅读更多

Spring Boot 2系列(三十六):集成 JavaMail 发送邮件

  发送电子邮件到用户是项目中一个很常见的功能,如邮件通知、邮件营销、通过邮件激活账号、通过邮件找回密码等。

  Spring Framework 提供了一个用于发送电子邮件的实用库,保护用户免受底层邮件系统的细节影响。提供了发送电子邮件的简单抽象 JavaMailSender 接口,Spring Boot 为 JavaMail提供了自动配置和启动模块。

  Spring Boot 对 Email 的支持官方说明,有关使用 JavaMail 的详细说明,可参阅官方的参考文档, JavaMail 参考实现

阅读更多

Spring Boot 2系列(三十五):集成 RabbitMQ 消息中间件

  Spring AMQP 默认支持 RabbitMQ 作为 AMQP 协议的实现,因为…RabbitMQ 和 Spring 是同一家软件公司开发的。

  Spring Boot 对 RabbitMQ 的支持也是基于 Spring AMQP。为 RabbitMQ 提供了自动配置,可以直接使用rabbitTemplate,自动开启了消息监听注解@EnableRabbit

  更多关于消息服务概念和支持的组件可阅读Spring Boot 2实践系列(三十三):JMS 和 AMQP 消息服务及支持的消息组件。   

阅读更多

Nginx系列(一):Linux 环境安装 Nginx

  Linux 环境安装 Nginx 真的太简单了,是非常的简单。

  在部署个前后端分离的前端项目,需要用到 Nginx ,但包下载下来后,接下来的操作我尽然…..忘…..了,记忆中可是随便两三步操作就能跑的。

阅读更多