本地缓存、服务器缓存、分布式缓存介绍

您所在的位置:网站首页 分布式缓存解决方案 本地缓存、服务器缓存、分布式缓存介绍

本地缓存、服务器缓存、分布式缓存介绍

#本地缓存、服务器缓存、分布式缓存介绍| 来源: 网络整理| 查看: 265

缓存的意义

     缓存存在的意义:

        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