Linux 下 解决中文文件名乱码(GBK 文件名转换为 UTF-8)
在 Windows 上创建的文件,文件名是中文,上传到 Linux 后,中文名显示乱码,中文名的HTML文件无法加载。
原因是 Windows 的文件名中文编码默认是 GBK,而 Linux 默认的文件名编码是 UTF-8, 解决文件名中文乱码,需要进行转码
Linux 下 解决中文文件名乱码(GBK 文件名转换为 UTF-8)
在 Windows 上创建的文件,文件名是中文,上传到 Linux 后,中文名显示乱码,中文名的HTML文件无法加载。
原因是 Windows 的文件名中文编码默认是 GBK,而 Linux 默认的文件名编码是 UTF-8, 解决文件名中文乱码,需要进行转码
Redis 4.x系列(十七):Redis Sentinel(高可用-主从切换哨兵模式)
简单的复制机制并不能保证高可用,若仅仅只配置了master-slave复制,当 master无法提高服务时,整个 Redis 服务就停了,slave 无法接替 master 继续提供服务。
Redis 为实现高可用提供了基于复制机制 的 **Sentinel(哨兵)**模式解决方案。Redis Sentinel Documentation,Redis 的 Sentinel 文档
Redis 4.x系列(十六):Redis 持久化之 RDB 与 AOF
Redis 是在内存在存储数据,当服务器重启则会丢失内存中的数据。 为保证数据安全, Redis 提供了对数据持久化的支持,数据持久化是防止数据丢失的最好方法。
Redis 共有两个数据持久化方式:RDB
和AOF
。持久化功能有效地避免因进程退出造成数据丢失问题,当下次重启时利用之前持久化的文件即可实现数据恢复。
Redis Persistence 官网,Redis persistence demystified(Redis 持久化揭秘),Redis 持久化 –中文译
Redis 4.x系列(十五):Redis 主从复制、调优和故障分析
为解决单个数据库可能存因系统崩溃、设备异常等单点故障导致整个应用系统无法提供服务的问题,数据库系统提供了复制技术来支持多存储服务的数据复制同步。
复制机制是读写分离的基础,也是是集群的基础。 Redis 也支持复制机制,可以将一个 Redis 服务器(master,主实例)中的数据复制到其他 Redis 服务器中(slave, 从实例)。
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倍)。
给新人做 Git 使用培训,整理此篇文章。旨在快速入门、熟练使用最常规的操作。Git 的详细介结、Git 与 SVN 的区别,可从网上了解。
Git 使用相关教程资源Git 中文网, Git 官网中文教程, 廖学峰 Git教程, Runoob Git教程, git - 简明指南。
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 消息服务及支持的消息组件。