![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
三方件
文章平均质量分 94
三方件
Ewen Seong
trouble and chance comes together
展开
-
日志轮转—cron和logrotate
本文介绍如何基于linux系统的cron和logrotate实现日志轮转。cron是一个定时任务管理器,根据配置定时触发任务;logrotate是一个日志轮转工具,根据配置处理日志,logrotate依赖于cron的定时触发。cron是linux系统自带的执行定时任务的工具。cron有3个概念需要区分:cron代表这个软件,crond代表实际运行的进程,crontab用于修改配置文件的客户端工具。cron的核心是配置文件,crond每分钟会读取并比较配置文件时间戳,以确认是否有修改。原创 2024-06-22 20:47:48 · 948 阅读 · 1 评论 -
Redis系列-5 Redis分布式锁
本文介绍Redis分布式锁的内容,包括Redis相关命令和Lua脚本的介绍,以及操作分布式锁的流程与消屏蔽底层Redis对锁的实现方式,仅用Lock和UnLock表示获取锁和释放锁,分布式锁的竞争流程可表示如下图所示:[1] 客户端ClientA向Redis发送获取锁的消息,锁key为myLock(自定义);[2] Redis响应成功,表示占锁成功;[3] 客户端ClientB向Redis发送获取锁的消息,key为myLock;[4] 服务器判断此时myLock锁已被ClientA占有,Redis响应失败;原创 2024-06-09 20:57:16 · 759 阅读 · 0 评论 -
Redis系列-4 Redis集群介绍
Redis提供了持久化能力,保证了重启不会丢失数据;但Redis重启至完全恢复期间,缓存不可用。另外,对于高并发场景下,单点Redis服务器的性能不能满足吞吐量要求,需要进行横向扩展。此时,可通过搭建Redis集群解决如上两个问题。按照并发量和具体业务的要求,可以部署三种架构的集群:主从模式、哨兵模式、Cluster模式,以下分章节分别进行介绍。原创 2024-06-09 16:23:02 · 1161 阅读 · 2 评论 -
Redis系列-3 Redis缓存问题
数据库(如Mysql)的持久化特点带来了较低的性能,高并发的场景下,连接池很快被耗尽而出现宕机或DOS,无法继续对外提供服务。相对于数据库的硬盘IO,缓存中间件基于内存进行读写,从而具备较大的吞吐量和高并发抵抗能力。在服务器与数据库之间添加一层缓存,一方面可以缓解数据库压力,适应高并发场景;另一方面可以提高服务器的响应速度(内存读写速度远高于磁盘IO),具体流程如下所示:引入缓存后,服务器会先从缓存服务器查询,若数据不存在,才会从数据库查询,并将数据库查询结果写入缓存服务器。原创 2024-05-12 22:30:00 · 877 阅读 · 0 评论 -
Redis系列-2 Redis持久化机制
服务器重启后会丢失内存中的全部数据,内存数据库如果没有持久化机制,难以保证数据的可靠性,如Memcached。Redis提供了RDB(基于全量)和AOF(基于增量)两种持久化机制,一方面可以保证数据的可靠性,当服务器意外宕机重启后,Redis从持久化文件中读取数据,可以快速恢复到宕机前的状态;另外,基于持久化文件可以实现数据备份、数据扩展和搭建Redis集群。原创 2024-05-03 20:55:21 · 753 阅读 · 0 评论 -
Redis系列-1 Redis介绍
基于C语言开发的、基于内存的、跨平台的非关系型数据库(Nosql)。Redis基于键值对存储结果,键只能为字符串,值的类型有:字符串String、散列Hash、列表List、集合Set、有序集合Sorted Set。因其基于内存而脱离了常规数据库的IO操作,从而具备高性能的读写(10W/s的读和8W/s写)。核心处理使用单线程进行,避免了并发问题,以及减少了线程切换带来的性能开销。redis作为内存数据库,可用于存放缓存数据。在高并发场景中存放热点数据,可以提高数据访问速度,也可以缓解数据库压力;原创 2024-05-01 16:48:26 · 807 阅读 · 0 评论 -
ElasticSearch-1 概念介绍和案例解析
本文作为三方件专题的第一篇,介绍ES的基础内容,包括:ES的基本概念、Http接口以及Java相关API等;分布式相关的概念和ES性能调优等放在ES高级篇中介绍。原创 2022-09-10 22:40:37 · 742 阅读 · 0 评论