Redis 高可用架构最佳实践( 三 )
缺点:
- 架构比较新 , 最佳实践较少
- 多键操作支持有限(驱动可以曲线救国)
- 为了性能提升 , 客户端需要缓存路由表信息
- 节点发现、reshard 操作不够自动化
文章插图
Twemproxy
From:
多个同构 Twemproxy(配置相同)同时工作 , 接受客户端的请求 , 根据 hash 算法 , 转发给对应的 Redis 。
Twemproxy 方案比较成熟了 , 之前我们团队长期使用此方案 , 但是效果并不是很理想 。 一方面是定位问题比较困难 , 另一方面是它对自动剔除节点的支持不是很友好 。
优点:
- 开发简单 , 对应用几乎透明
- 历史悠久 , 方案成熟
- 代理影响性能
- LVS 和 Twemproxy 会有节点性能瓶颈
- Redis 扩容非常麻烦
- Twitter 内部已放弃使用该方案 , 新使用的架构未开源
文章插图
Codis
From:
Codis 是由豌豆荚开源的产品 , 涉及组件众多 , 其中 ZooKeeper 存放路由表和代理节点元数据、分发 Codis-Config 的命令;Codis-Config 是集成管理工具 , 有 Web 界面供使用;Codis-Proxy 是一个兼容 Redis 协议的无状态代理;Codis-Redis 基于 Redis 2.8 版本二次开发 , 加入 slot 支持 , 方便迁移数据 。
优点:
- 开发简单 , 对应用几乎透明
- 性能比 Twemproxy 好
- 有图形化界面 , 扩容容易 , 运维方便
- 代理依旧影响性能
- 组件过多 , 需要很多机器资源
- 修改了 Redis 代码 , 导致和官方无法同步 , 新特性跟进缓慢
- 开发团队准备主推基于 Redis 改造的 reborndb
所谓的最佳实践 , 都是最适合具体场景的实践 。
主推以下方案:
- Redis Sentinel 集群 + 内网 DNS + 自定义脚本
- Redis Sentinel 集群 + VIP + 自定义脚本
- Redis Sentinel 集群建议使用 >= 5 台机器
- 不同的大业务可以使用一套 Redis Sentinel 集群 , 代理该业务下的所有端口
- 根据不同的业务划分好 Redis 端口范围
- 自定义脚本建议采用 Python 实现 , 扩展便利
- 自定义脚本需要注意判断当前的 Sentinel 角色
- 自定义脚本传入参数:
- 自定义脚本需要远程 ssh 操作机器 , 建议使用 paramiko 库 , 避免重复建立 SSH 连接 , 消耗时间
- 加速 SSH 连接 , 建议关闭以下两个参数
- UseDNS no
- GSSAPIAuthentication no
- 微信或者邮件告警 , 建议 fork 一个进程 , 避免主进程阻塞
- 自动切换和故障切换 , 所有操作建议在 15s 以内完成
- END -
PyTorch 中文版官方教程来了 。
PyTorch 是近年来较为火爆的深度学习框架 , 然而其中文版官方教程久久不来 。 近日 , 一款完整的 PyTorch 中文版官方教程出炉 , 读者朋友可以更好的学习了解 PyTorch 的相关细节了 。 教程作者来自 pytorchchina.com 。
教程网站:
如果不想自己下载 , 请通过下面方式获取pdf资料:
回复「pytorch」获取pdf和代码
- 整形美容|双十一医美不良事件高发 热玛吉风险高 业内:医美职业打假人太少
- 华为|台积电、高通、华为、小米接连宣布!美科技界炸锅:怎么会这样!
- 设置|iPhone拍照小技巧:保留常用设置更高效
- 早报:高通骁龙888正式发布 嫦娥五号传回首张图片
- iphone12|菜鸟网络原副总裁被捕!此前多名高管被判刑
- 区企联企协|谋求更高质量的转型发展!区企联企协与区科技局成功举办科技考察对接活动
- 高配版|从4599元跌至3699元,256GB+65W,12GB旗舰加速退场
- 基建|深信服何朝曦:离开安全的“新基建”,就是在沙子上盖高楼
- 资本|2020年中国人工智能医疗行业发展现状分析 处于成长期且资本热度高
- 手机|用手机镜头展示丛林秘境,vivo S7带来的不止是高清