![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
中间件
文章平均质量分 93
Linux技术狂
C/C++Linux后台服务器开发高级架构师内容包括C/C++,Linux,Nginx,ZeroMQ,MySQL,Redis,MongoDB,ZK,流媒体,音视频开发,Linux内核,TCP/IP,协程,DPDK多个高级知识点。只要备注【TTT】即可获得,不备注没有哦
展开
-
详解Redis的主从同步原理
Redis主从模式中,一个高可用的Redis服务由一个Redis主节点(Master,后续简称为主节点)和若干Redis从节点(Slave,后续简称为从节点)组成。Redis中采用读写分离来保证主节点和从节点之间的数据一致性,具体实现如下。主节点支持数据写入和数据读取,从节点只支持数据读取;主节点会与从节点之间执行主从数据同步,以保证主节点数据与从节点数据一致。主从数据同步分为如下几种情况。从节点与主节点建立连接时进行全量同步;主节点与从节点正常运行时的同步;原创 2023-03-07 17:02:40 · 989 阅读 · 1 评论 -
单线程 Redis 如此之快的 4 个原因
综上所述,单线程架构是Redis团队经过时间考验的深思熟虑的选择。尽管是单线程的,Redis 仍然是性能最高和最常用的内存数据存储之一。原文链接:单线程 Redis 如此之快的 4 个原因。原创 2023-02-07 16:30:53 · 479 阅读 · 0 评论 -
深入浅出学习透析Nginx服务器的架构分析及原理分析「底层技术原理+运作架构机制」
Nginx再次回顾也许你已经忘记了Nginx是做什么的?我来再次给你夯实一下概念。多协议反向代理Nginx是个高性能的Web和反向代理服务器及HTTP服务器,它能反向代理HTTP,HTTPS和邮件相关(SMTP,POP3,IMAP)的协议链接,还可以提供了负载均衡以及HTTP缓存。原创 2023-02-03 15:15:19 · 590 阅读 · 0 评论 -
宕机了,Redis 如何避免数据丢失?
如果有人问你:"你会把 Redis 用在什么业务场景下?"我想你大概率会说:"我会把它当作缓存使用,因为它把后端数据库中的数据存储在内存中,然后直接从内存中读取数据,响应速度会非常快。"没错,这确实是 Redis 的一个普遍使用场景,但是,这里也有一个绝对不能忽略的问题:一旦服务器宕机,内存中的数据将全部丢失。目前,Redis 的持久化主要有两大机制,即 AOF(Append Only File)日志和 RDB(Redis DataBase) 快照。说到日志,我们比较熟悉的是数据库的写前日志(Write A原创 2023-02-02 14:41:54 · 532 阅读 · 0 评论 -
MySQL 中主从之间是怎样保证数据一致的呢?
今天,我们介绍了 MySQL 数据库主从复制过程中可能会遇到的一些问题。其中最主要的就是 binlog 日志在 STATEMENT 类型下有着存储数据量小的优点,但是也有导致数据不一致的情况;ROW 类型能够有效地解决数据不一致这种情况,但是也有存储数据量大这一缺点;MySQL 数据库结合前面两种类型的优点,又为我们提供了一个 mixed 类型。在日常的生产环境中,常用的 binlog 日志类型就是 mixed 类型。原文链接:MySQL 中主从之间是怎样保证数据一致的呢?原创 2023-01-31 16:04:13 · 2309 阅读 · 0 评论 -
怎样快速地迁移 MySQL 中的数据?
我们可以看到的是查询数据的时候报了一个 1146 的错误,这是因为 INnoDB 存储引擎中的数据表是需要在 MySQL 数据库的数据字典中注册的,我们直接将数据文件复制过去的时候并没有在数据字典中注册,换句话说就是在把数据复制过去之后,还需要在数据字典中注册数据库系统才能正常识别。文件迁移的方式其实也算是逻辑迁移的范畴,它主要通过命令将数据保存在文件中,然后再导入数据库即可,这种迁移方式是不会迁移表结构的,所以在导入数据之前需要手动创建表结构,其原理跟逻辑迁移的方式相同。这种迁移方式主要适用于。原创 2023-01-12 14:38:01 · 503 阅读 · 0 评论 -
从实战出发,聊聊缓存数据库一致性
Rockscache 也是一种保持缓存一致性的方法,它采用的缓存管理策略是:更新数据库后,将缓存标记为删除。原创 2023-01-10 15:32:30 · 535 阅读 · 0 评论 -
MySQL字符集和排序规则详解
MySQL提供了多种字符集和排序规则选择,其中字符集设置和数据存储以及客户端与MySQL实例的交互相关,排序规则和字符串的对比规则相关(1). 字符集的设置可以在MySQL实例、数据库、表、列四个级别(2). MySQL设置字符集支持在InnoDB, MyISAM, Memory三个存储引擎(3). 查看当前MySQL支持的字符集的方式有两种,一种是通过查看information_schema.character_set系统表,一种是通过命令【 show character set;】查看。原创 2023-01-07 14:23:26 · 5354 阅读 · 0 评论 -
MySQL的数据类型和存储引擎介绍
存储引擎是 MySQL 中具体与文件打交道的子系统,它是根据 MySQL AB 公司提供的文件访问层抽象接口定制的一种文件访问机制,这种机制就叫作存储引擎,下面是一些常用的存储引擎,有远古时期的 MyISAM、支持事务的 InnoDB、内存类型的 Memory、归档类型的 Archive、列式存储的 Infobright,以及一些新兴的存储引擎,以 RocksDB 为底层基础的 MyRocks 和 RocksDB,和以分形树索引组织存储的 TokuDB。InnoDB 支持外键,MyISAM 不支持;原创 2022-12-23 15:01:20 · 845 阅读 · 0 评论 -
消息中间件执行原理
消息中间件是指在分布式系统中完成消息的发送和接收的基础软件。消息中间件也可以称消息队列(Message Queue / MQ),用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息队列模型,可以在分布式环境下扩展进程的通信。简而言之,互联网场景中经常使用消息中间件进行消息路由、订阅发布、异步处理等操作,来缓解系统的压力。原创 2022-12-21 14:40:57 · 365 阅读 · 0 评论 -
掌握分布式环境缓存更新策略,提高缓存与数据库双写一致性!
三种缓存模式优缺点:Cache Aside 更新模式实现起来比较简单,但是需要维护两个数据存储,一个是缓存(Cache),一个是数据库(Repository)。Read/Write Through 更新模式只需要维护一个数据存储(缓存),但是实现起来要复杂一些。原创 2022-12-13 15:41:21 · 200 阅读 · 0 评论