本地缓存、服务器缓存、分布式缓存介绍 |
您所在的位置:网站首页 › 分布式缓存解决方案 › 本地缓存、服务器缓存、分布式缓存介绍 |
缓存的意义
缓存存在的意义: 1.减轻数据库压力 2.提升接口的性能 3.缓解服务器压力(不用每次去请求资源); 4.提升性能(打开本地资源速度当然比请求回来再打开要快得多); 5.减少带宽消耗 例如:我有1000个参数相同的请求,如果没有缓存,就会对访问1000次数据库,会给数据库造成很大的压力,如果用缓存,会减轻数据库的负担,提高程序的性能 缓存的分类缓存分为三种 第一种:本地缓存:存在于客户端,例如说微信的聊天记录(聊天记录非常适合用本地缓存),注意:用本地缓存的时候,应该注意安全性。 第二种:服务器缓存(例如Guava),存在于jvm堆里面,底层数据结构是HashMap,key-value键值对的形式。 第三种:分布式缓存(redis),服务器集群共用一个缓存。 redis做缓存的优势redis不只是可以做缓存,只是大部分应用场景是缓存 ①有丰富的数据类型 Redis将其数据完全保存在内存中,仅使用磁盘进行持久化。与其它键值数据存储相比,Redis有一组相对丰富的数据类型。Redis可以将数据复制到任意数量的从机中。 ②异常快 Redis非常快,每秒可执行大约110000次的设置(SET)操作,每秒大约可执行81000次的读取/获取(GET)操作。支持丰富的数据类型 - Redis支持开发人员常用的大多数数据类型 ,例如列表,集合,排序集和散列等等。这使得Redis很容易被用来解决各种问题,因为我们知道哪些问题可以更好使用地哪些数据类型来处理解决。 ③操作具有原子性,例如我们在分布式id生成时可以借助redis,由于incr操作具有原子性,所以id永远不会重复。 所有Redis操作都是原子操作,这确保如果两个客户端并发访问,Redis服务器能接收更新的值。 ④Redis是一个内存数据库,但在磁盘数据库上是持久的,因此它代表了一个不同的权衡,在这种情况下,在不能大于存储器(内存)的数据集的限制下实现非常高的写和读速度 ⑤redis支持多种数据结构,Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash等数据结构的存储 ⑥Redis支持master-slave(主-从)模式应用 ⑦Redis单个value的最大限制是1GB,memcached只能保存1MB的数据。
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |