
Redis
文章平均质量分 96
生而知之者为妖
这个作者很懒,什么都没留下…
展开
-
高并发网站架构演进之路
概述本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。特别说明:本文以淘宝为例仅仅是为了便于说明演进过程可能遇到的问题,并非是淘宝真正的技术演进路径基本概念在介绍架构之前,为了避免部分读者对架构设计中的一些概念不了解,下面对几个最基础的概念进行介绍:(1)分布式系统中的多个模块在不同服务器上部署,即可称为分布式系统,如Tomcat和数据库分别部署在不同的服务器转载 2020-05-21 11:30:43 · 400 阅读 · 0 评论 -
分布式限流算法以及实战
限流的作用由于API接口无法控制调用方的行为,因此当遇到瞬时请求量激增时,会导致接口占用过多服务器资源,使得其他请求响应速度降低或是超时,更有甚者可能导致服务器宕机。 限流(Rate limiting)指对应用服务的请求进行限制,例如某一接口的请求限制为100个每秒,对超过限制的请求则进行快速失败或丢弃。限流可以应对:(1)热点业务带来的突发请求;(2) 调用方bug导致的突发请求;(3) 恶意攻击请求。因此,对于公开的接口最好采取限流措施。分布式限流的优势当应用为单点应用时,只要应用转载 2020-05-19 16:37:54 · 486 阅读 · 4 评论 -
三种方式实现分布式锁
Redis实现分布式锁Zookeeper实现分布式锁数据库锁实现分布式锁原创 2020-05-14 21:03:38 · 839 阅读 · 0 评论 -
跳跃表原理以及实现(含ConcurrentSkipListMap和zset底层实现原理分析)
前言我们常用来加快查找速度的两类数据结构分别是哈希表和平衡树,哈希表查找时间复杂度是O(1),而各类平衡树(包括红黑树)的查找时间复杂度是O(logn)。哈希表虽然查找速度快,但它不是有序的,无法进行范围查询;平衡树虽然也很香,但它每一次的插入和删除都可能导致全局调整,耗时多。而本篇博文介绍的跳跃表查找的效率与平衡树差不多,时间复杂度都是O(logn),但插入或者删除值时,只是局部调整,过程简单...原创 2020-05-01 21:14:58 · 2040 阅读 · 0 评论 -
Redis事务(Redis事务与普通关系型数据库事务的区别)
前言Redis作为非关系型数据库中的一种,因为其基于内存、单线程、支持持久化、拥有着高速的读写速度而又支持多种数据类型、支持原生集群等特点而被广泛使用。这篇博文主要讨论下Redis事务与关系型数据库(比如MySQL)事务之间的区别。Redis事务Redis事务与MySQL事务一样,一次事务可以执行多条命令,在事务执行时命令按顺序执行。由MULTI命令标志着事务的开始,EXEC命令标志着开始执...原创 2020-04-26 13:25:23 · 1675 阅读 · 4 评论 -
布隆过滤器是什么?(布隆过滤器原理解析)
前言布隆过滤器是一种用来检索数据是否在大集合中的高效的、空间占用少的概率型数据结构,该数据结构由哈希函数以及位数组(二进制向量)来实现的,一般而言,布隆过滤器支持add 和 isExist 操作。过滤器使用场景1、布隆过滤器主要用于判断给定数据是否存在大数据集中。可以用来防止缓存穿透、邮箱的垃圾邮件过滤、黑名单功能等等。利用布隆过滤器可以很有效的减少磁盘 IO 或者网络请求,因为一旦一个值必...原创 2020-03-25 14:05:41 · 628 阅读 · 0 评论 -
Ubuntu服务器配置Redis集群
最近无心科研,所以脑袋瓜一抽,就来学习了下redis,配置redis集群当然是必备操作了,这里我使用的是ubantu服务器,可能是菜鸡本鸡吧!每次搭配环境或者配置软件都会疯狂采坑,这里希望我的经历能给其它菜鸡同仁一点经验帮助吧!如果有什么遗漏的,请评论下指出,谢谢!原创 2019-11-23 20:19:57 · 928 阅读 · 0 评论