上一页 1 2 3 4 5 6 7 ··· 40 下一页

2021年8月16日

摘要: 1 、 访 问 速 度 快 , 因 为 数 据 存 在 内 存 中 , 类 似 于 Java 中 的 HashMap 或 者 C++ 中 的 哈 希 表 ( 如 unordered_map/unordered_set),这两者的优势就是查找和操作的时间复杂度都是O(1) 2、数据类型丰富,支持Str 阅读全文
posted @ 2021-08-16 15:05 超人不会灰啊 阅读(1131) 评论(0) 推荐(0) 编辑
 
摘要: 严格意义上来说缓存分为本地缓存和分布式缓存。 那以 C++ 语言为例,我们可以使用 STL 下自带的容器 map 来实现缓存,但只能实现本地缓存,它最主 要的特点是轻量以及快速,但是其生命周期随着程序的销毁而结束,并且在多实例的情况下,每个实例 都需要各自保存一份缓存,缓存不具有一致性。 使用 Re 阅读全文
posted @ 2021-08-16 14:55 超人不会灰啊 阅读(320) 评论(0) 推荐(0) 编辑
 
摘要: 主要是因为 Redis 具备高性能和高并发两种特性。 高性能:假如用户第一次访问数据库中的某些数据。这个过程会比较慢,因为是从硬盘上读取的。将 该用户访问的数据存在缓存中,这样下一次再访问这些数据的时候就可以直接从缓存中获取了。操作 缓存就是直接操作内存,所以速度相当快。如果数据库中的对应数据改变的 阅读全文
posted @ 2021-08-16 14:54 超人不会灰啊 阅读(369) 评论(0) 推荐(0) 编辑
 
摘要: String String数据结构是简单的key-value类型,value其实不仅可以是String,也可以是数字。 常规key-value缓存 应用; 常规计数:微博数,粉丝数等。 Hash Hash 是一个 string 类型的 field 和 value 的映射表,hash 特别适合用于存储 阅读全文
posted @ 2021-08-16 14:49 超人不会灰啊 阅读(79) 评论(0) 推荐(0) 编辑
 
摘要: 简单动态字符串(Simple Dynamic String,SDS) Redis没有直接使用C语言传统的字符串,而是自己构建了一种名为简单动态字符串(Simple dynamic string,SDS)的抽象类型,并将SDS用作Redis的默认字符串表示。 其实SDS等同于C语言中的char * , 阅读全文
posted @ 2021-08-16 14:23 超人不会灰啊 阅读(62) 评论(0) 推荐(0) 编辑
 
摘要: Redis是一个数据库,不过与传统数据库不同的是Redis的数据库是存在内存中,所以读写速度非常快, 因此 Redis被广泛应用于缓存方向。 除此之外,Redis也经常用来做分布式锁,Redis提供了多种数据类型来支持不同的业务场景。除此之 外,Redis 支持事务持久化、LUA脚本、LRU驱动事件 阅读全文
posted @ 2021-08-16 14:02 超人不会灰啊 阅读(60) 评论(0) 推荐(0) 编辑
 
摘要: 在web服务框架中加入缓存。在服务器与数据库层之间加入缓存层,将高频访问的数据存入缓存中, 减少数据库的读取负担。 增加数据库索引,进而提高查询速度。(不过索引太多会导致速度变慢,并且数据库的写入会导致索 引的更新,也会导致速度变慢) 主从读写分离,让主服务器负责写,从服务器负责读。 将数据库进行拆 阅读全文
posted @ 2021-08-16 14:00 超人不会灰啊 阅读(54) 评论(0) 推荐(0) 编辑
 
摘要: 主要是利用Innodb的redo log。重写日志, 正如之前说的,MySQL是先把磁盘上的数据加载到内存中, 在内存中对数据进行修改,再写回到磁盘上。如果此时突然宕机,内存中的数据就会丢失。 怎么解决这 个问题? 简单啊,事务提交前直接把数据写入磁盘就行啊。 这么做有什么问题? 1.只修改一个页面 阅读全文
posted @ 2021-08-16 13:59 超人不会灰啊 阅读(338) 评论(0) 推荐(0) 编辑
 
摘要: 主要是利用 Innodb 的undo log。 undo log名为回滚日志,是实现原子性的关键,当事务回滚时能够撤销 所有已经成功执行的 SQL语句,他需要记录你要回滚的相应日志信息。 例如 当你delete一条数据的时候,就需要记录这条数据的信息,回滚的时候,insert这条旧数据 当你upda 阅读全文
posted @ 2021-08-16 13:48 超人不会灰啊 阅读(374) 评论(0) 推荐(0) 编辑
 
摘要: 分为两个层面来说。 从数据库层面,数据库通过原子性、隔离性、持久性来保证一致性。也就是说ACID四大特性之中, C(一致性)是目的,A(原子性)、I(隔离性)、D(持久性)是手段,是为了保证一致性,数据库提供的手 段。数据库必须要实现AID三大特性,才有可能实现一致性。例如,原子性无法保证,显然一致 阅读全文
posted @ 2021-08-16 13:47 超人不会灰啊 阅读(1072) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 40 下一页