-
什么是一致性Hash,及其应用场景详解
本文通过一个经典的分布式缓存的应用场景来阐述为什么需要一致性Hash。 1. 场景描述 我们有3万张图片的存储需求,通过评估单台服务器的存储能力后,需要用三台服务器,编号为0号、1号、2号来缓存这些图片。我们希望这些图片被均匀的缓存到这3台服...
kavin 2023.01.26 586浏览 0 -
缓存雪崩、缓存击穿、缓存穿透及其解决方案详细介绍
背景 Redis 作为目前使用最广泛的缓存,搭配MySQL的使用场景相信大家都不陌生。因为 Redis 是内存数据库,我们可以将数据库的数据缓存在 Redis 里,相当于数据缓存在内存,内存的读写速度比硬盘快好几个数量级,这样大大提高了系统性...
gtxyzz 2023.01.26 519浏览 0 -
深度剖析5种IO模型
遇到的问题 为啥子Nginx能同时支撑百万并发和数十万连接? 为啥子Redis单线程的性能比多线程的Memcached还要强? 为啥子Dubbo的的通信效率非常高? 其实上面的场景回归到具体应用上就是一种超强的IO能力,谈到IO我们可以先...
king 2023.01.26 639浏览 0 -
软件架构设计、软件设计的基本概念和相关知识
软件架构设计、软件设计的基本概念 一、软件架构设计 1、软件架构的定义 软件架构为软件系统提供了一个结构、行为和属性的高级抽象,由构件的描述、构件的相互作用(连接件))、指导构件集成的模式以及这些模式的约束组成。软件架构不仅指定了系统的组...
kavin 2023.01.26 539浏览 0 -
使用 Git bisect 命令定位首次引入错误的提交
bisect 工具 Git 的 bisect 工具通过快速识别坏的提交,节省了时间和精力。 你是不是有过这样的经历:发现代码中有 错误bug,但不知道这个错误是什么时候引入的。这有可能是因为,某个人提交了一份有错误的代码,但没有在他...
admin 2023.01.26 557浏览 0