• Cache选型的一些思考


    Cache对于减轻DB负载有非常关键的数据。以下对经常使用的memcached和redis做个总结,便于技术选型。


    1 memcached 
    (1) 支持的操作有限,支持经常使用的set,get,delete和过期删除等。
    (2) 本身不支持分布式特性。分布式特性是通过client来提供,client须要维护多个server的信息。添加或者删除一个server节点,须要更新全部的client维护的信息。

    (3) client支持一致性hash算法,不提供持久化。不提供Replaction机制。

    (4) 性能高,操作简单。存储复杂的数据结构。须要自己提供序列化机制。

    (5) 近期版本号不怎么更新,作为内存池的一种扩展。功能已经非常完备了。
    2 redis
    (1) 提供丰富的操作,支持丰富的数据结构。

    (2) 本身不提供分布式特性,分布式特性可通过Redis cluster或者Twemproxy支持分布式操作。
    (3) 提供持久化,提供主从同步机制,提供的机制都不是严格一致性的。会造成数据短暂的不一致性。
    (4) 官方支持特别好。一直在提供和完好一些新特性,这个非常重要!!

    这里简介下Twemproxy

    1 这个是Twitter开源的Memcached和Redis的代理层,使用Twemproxy的集群方案例如以下:

    2 Twemproxy的功能介绍

    (1)前端使用 Twemproxy 做代理。后端的 Redis 数据能基本上依据 key 来进行比較均衡的分布。

    (2)后端一台 Redis 挂掉后,Twemproxy 可以自己主动摘除。恢复后,Twemproxy 可以自己主动识别、恢复并又一次增加到 Redis 组中又一次使用。

    (3)Redis 挂掉后,后端数据是否丢失根据 Redis 本身的策略配置,与 Twemproxy 基本无关。

    (4)假设要新添加一台 Redis,Twemproxy 须要重新启动才干生效;而且数据不会自己主动又一次 Reblance。须要人工单独写脚本来实现。

    (5)如同一时候部署多个 Twemproxy,配置文件一致(測试配置为distribution:ketama,modula),则能够从随意一个读取,都能够正确读取 key相应的值。

    (6)多台 Twemproxy 配置一样。client分别连接多台 Twemproxy能够在一定条件下提高性能。依据 Server 数量。提高比例在 110-150%之间。

    (7)如原来已经有 2 个节点 Redis。兴许有添加 2 个 Redis。则数据分布计算与原来的 Redis 分布无关,现有数据假设须要分布均匀的话,须要人工单独处理。

    (8)假设 Twemproxy 的后端节点数量发生变化。Twemproxy 同样算法的前提下。原来的数据必须又一次处理分布,否则会存在找不到key值的情况


    结合这边的业务特点,我认为能够使用Redis来提供Cache服务。
    1  提供多个(大于1)Redis实例。且在不同机器上面。同一时候在多个机器上面都部署Twemproxy代理,规避Cache的单点故障。
    2  开启Redis的Replaction机制,通过区分不同业务,来区分使用主Cache和从Cache,分担请求压力。

    3  经确认,Redis也存在delete删除失败的情形,这个须要配合Cache过期时间,异步删除来完好。
    4  使用Cache的同一时候。须要区分业务。敏感业务不做Cache,保证数据的严格一致性。 
    5  Redis的持久化作用不大。能够考虑关闭。

    
  • 相关阅读:
    20145331 《信息安全系统设计基础》第11周学习总结
    20145331魏澍琛《信息安全系统设计基础》第10周学习总结
    20145331 《信息安全系统设计基础》实验四 外设驱动设计
    20145331 《信息安全系统设计基础》实验二 固件设计
    20145330 《网络对抗》逆向及BOF基础实践
    20145330 《信息安全系统设计基础》课程总结
    20145330 《信息安全系统设计基础》第14周学习总结
    20145330 《信息安全系统设计基础》第13周学习总结
    20145330 《信息安全系统设计基础》第12周学习总结
    20145216 20145330 《信息安全系统设计基础》 实验五 简单嵌入式WEB 服务器实验
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5351357.html
Copyright © 2020-2023  润新知