摘要: Redis是典型的单线程架构,所有的读写操作都是在一条主线程中完成的。当Redis用于高并发场景时,这条线程就变成了它的生命线。如果出现阻塞,哪怕是很短时间,对于我们的应用来说都是噩梦。导致阻塞问题的场景大致分为内在原因和外在原因: □ 内在原因包括: 不合理地使用API或数据结构、CPU饱和、持久 阅读全文
posted @ 2021-04-27 19:02 小家电维修 阅读(550) 评论(0) 推荐(0) 编辑
摘要: 1.配置 1.1 建立复制 参与复制的Redis实例划分为主节点(master) 和从节点(slave)。默认情况下,Redis都是主节点。每个从节点只能有一个主节点,而主节点可以同时具有多个从节点。复制的数据流是单向的,只能由主节点复制到从节点。配置复制的方式有以下三种: 1) 在配置文件中加入s 阅读全文
posted @ 2021-04-27 11:59 小家电维修 阅读(263) 评论(0) 推荐(0) 编辑
摘要: 1.RDB RDB持久化是把当前进程数据生成快照保存到硬盘的过程,触发RDB持久化过程分为手动触发和自动触发。 1.1 触发机制 手动触发分别对应save和bgsave命令: □ save命令:阻塞当前Redis服务器,直到RDB过程完成为止,对于内存比较大的实例会造成长时间阻塞,线上环境不建议使用 阅读全文
posted @ 2021-04-26 19:29 小家电维修 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 1.客户端管理 Redis提供了客户端相关API对其状态进行监控和管理,本节将深入介绍各个API的使用方法以及在开发运维中可能遇到的问题。 1.1 客户端API 1.client list client list命令能列出与Redis服务端相连的所有客户端连接信息,例如下面代码是在一个Redis实例 阅读全文
posted @ 2021-04-25 23:55 小家电维修 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 1. Pipeline 1.1 Pipeline概念 Redis客户端执行一条命令分别为如下4个过程: 1) 发送命令 2) 命令排队 3) 命令执行 4) 返回结果 其中1)+4)称为Round Trip Time(RTT,往返时间)。 Redis提供了批量操作命令(例如mget、mset等),有 阅读全文
posted @ 2021-04-23 19:45 小家电维修 阅读(1078) 评论(0) 推荐(0) 编辑
摘要: Redis提供了redis-cli、redis-server、redis-benchmark 等shell工具。 1.redis-cli详解 了解redis-cli的全部参数,可以执行redis-cli -help命令来进行查看,下面将对一些重要参数的含义以及使用场景进行说明。 1.-r -r (r 阅读全文
posted @ 2021-04-23 14:44 小家电维修 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 1. Redis的作用 1.1 Redis可以做什么 1.缓存:缓存机制几乎在所有的大型网站都有使用,合理地使用缓存不仅可以加快数据的访问速度,而且能够有效地降低后端数据源的压力。Redis提供了键值过期时间设置,并且也提供了灵活控制最大内存和内存溢出后的淘汰策略。可以这么说,一个合理的缓存设计能够 阅读全文
posted @ 2021-04-22 19:55 小家电维修 阅读(144) 评论(0) 推荐(0) 编辑
摘要: Redis借鉴了 Linux操作系统对于版本号的命名规则:版本号第二位如果是奇数.则为非稳定版本(例如2.7、2.9、3.1),如果是偶数,则为稳定版本(例如2.6、2.8、3.0、3.2)。当前奇数版本就是下一个稳定版本的开发版本,例如2.9版本是3.0版本的开发版本。所以我们在生产环境通常选取偶 阅读全文
posted @ 2021-04-20 20:26 小家电维修 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 公司项目中有主备CDN存在,由于阿里云以及腾讯云的预热功能不支持自动(一般是云函数),所以就根据云厂商给的脚本稍作更改,手动传入数据来进行预热。 由于之前部署在centos7.7系统python2.7.5上,脚本可以正常运行,由于某些原因,机器要进行下线,导致必须迁移脚本。为了节省成本,决定复用线上 阅读全文
posted @ 2021-04-20 15:37 小家电维修 阅读(2564) 评论(0) 推荐(0) 编辑
摘要: sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。本文主要以CentOS 6. 阅读全文
posted @ 2021-04-16 21:43 小家电维修 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 1.一致性哈希算法背景 一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得DHT可以在P2P环境中真正得到应用。 但现在 阅读全文
posted @ 2021-04-16 14:57 小家电维修 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 1.事务的四大特性 原子性(Atomicity):化学中的原子指不可再分的基本微粒,数据库中原子性强调事务是一个不可分割的整体,事务开始后所有操作要么全部成功,要么全部失败,不可能停滞在中间某个环节。如果事务执行过程中出错就会回滚到事务开始前的状态,所有的操作就像没有发生一样不会对数据库有任何影响。 阅读全文
posted @ 2021-04-14 13:03 小家电维修 阅读(471) 评论(0) 推荐(0) 编辑
摘要: 1. 简单回顾 Kafka作为时下最流行的开源消息系统,被广泛地应用在数据缓冲、异步通信、汇集日志、系统解耦等方面。相比较于RocketMQ等其他常见消息系统,Kafka在保障了大部分功能特性的同时,还提供了超一流的读写性能。 本文将针对Kafka性能方面进行简单分析,首先简单介绍一下Kafka的架 阅读全文
posted @ 2021-04-13 18:22 小家电维修 阅读(183) 评论(0) 推荐(0) 编辑
摘要: Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一个分布式的,可划分的,冗余备份的持久性的日志服务。它主要用于处理活跃的流式数据。 在大数据系统中,常常会碰到一个问题,整个大数据是由各个子系统组成,数据需要在各个子系统中高性能,低 阅读全文
posted @ 2021-04-13 16:48 小家电维修 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 1.起因 公司游戏项目上线第一天,出现单个区服异常宕机的问题,根据日志排查下来,连接数据的时候报错,后面排查是因为有玩家插入Emoji 等表情导致无法存储如数据库,数据库字符集编码为utf8,后续改成utf8mb4就可以存储emoji等表情了 所以今天来解析一下utf8和utf8mb4的区别。 2. 阅读全文
posted @ 2021-04-13 14:56 小家电维修 阅读(312) 评论(0) 推荐(0) 编辑