redis答卷 分布式 缓存

分布式事务解决方案

曾几何时,知了在一家小公司做项目的时候,都是一个服务打天下,所以涉及到数据一致性的问题,都是直接用本地事务处理。 ......
分布式 解决方案 事务 方案

(二) MdbCluster分布式内存数据库——分布式架构

(二) MdbCluster分布式内存数据库——分布式架构 上一篇: (一) MdbCluster分布式内存数据库——基础架构介绍 分布式架构是MdbCluster的核心关键,业界有很多相关的实现,却很少有文章详细的解释每个架构实现背后的细节和这么做的原因。在MdbCluster整个研发和测试的过程 ......
分布式 MdbCluster 架构 内存 数据库

(三) MdbCluster分布式内存数据库——节点状态变化及分片调整

(三) MdbCluster分布式内存数据库——节点状态变化及分片调整 上一篇: (二) MdbCluster分布式内存数据库——分布式架构 昨天我们在测试节点动态扩缩容时,发现了一个小bug。开始时我想当然“头疼医头,脚疼医脚”地安排开发在问题发生的地方修掉这个bug。早上刚好要一起开会,顺便讨论 ......
分布式 节点 MdbCluster 内存 状态

深入理解跳表及其在Redis中的应用

跳表可以达到和红黑树一样的时间复杂度 O(logN),且实现简单,Redis 中的有序集合对象的底层数据结构就使用了跳表。本篇文章从调表的基础概念、节点、初始化、添加方法、搜索方法以及删除方法出发,介绍了调表的完整代码以及调表在redis中的应用。 ......
Redis

Redis避坑指南:为什么要有分布式锁?

JUC提供的锁机制,可以保证在同一个JVM进程中同一时刻只有一个线程执行操作逻辑; 多服务多节点的情况下,就意味着有多个JVM进程,要做到这样,就需要有一个中间人; 分布式锁就是用来保证在同一时刻,仅有一个JVM进程中的一个线程在执行操作逻辑; 换句话说,JUC的锁和分布式锁都是一种保护系统资... ......
分布式 指南 Redis

真正“搞”懂HTTP协议10之缓存控制

HTTP缓存相关的问题好像是前端面试中比较常见的问题了,上来就会问什么cache-control字段有哪些,有啥区别啥的。嗯……说实话,我觉得至少在本篇来说,HTTP缓存还算不上复杂,只是字段稍微多了点,大家用心记一下就好啦。 缓存的概念,其实在你访问互联网中的任何资源其所产生的任何链路中的每一个节 ......
缓存 HTTP

真正“搞”懂HTTP协议12之缓存代理

我们在前两篇的内容中分别学习了缓存和代理,大致了解了缓存有哪些头字段,代理是如何服务于服务器和客户端的,那么把两者结合起来,代理缓存,也就是说代理服务器也可以缓存,当客户端请求数据的时候,未必一定要追溯到源服务器上,代理服务器就可以直接把缓存的数据返回给客户端。并且,HTTP的缓存,大多数其实都是由 ......
缓存 HTTP

redis实现分布式锁(包含代码以及分析利弊)

redis实现分布式锁(基础版) 使用redis实现分布式锁的方法有多种,基础版本是基于setnx命令,即如果不存在则设置。这个命令可以保证只有一个客户端能够成功设置一个key,从而获得锁。设置key的时候需要设置一个过期时间,以防止死锁。释放锁的时候需要删除key,或者使用lua脚本来保证原子性。 ......
利弊 分布式 代码 redis

【Redis场景3】缓存穿透、击穿问题

【Redis场景3】缓存穿透、击穿问题,涉及缓存穿透、缓存击穿问题的原因分析及解决方案,并进行压测实践;每1~2周学习整理redis中的知识点和场景实现,希望有所输入输出,每天进步一点点。 ......
缓存 场景 问题 Redis

用Java写一个分布式缓存——RESP服务端

本篇我们将完成一个RESP的socket的服务端,初步完成一个单机版缓存。 另外我们还需要完成命令的动态路由。 源码:https://github.com/weloe/Java-Distributed-Cache ......
分布式 缓存 Java RESP

【Redis场景4】单机环境下秒杀问题

【Redis场景4】单机环境下秒杀问题;涉及到全局唯一ID的生成,并发问题,库存超卖问题,一人一单秒杀问题等,相关场景进行压测,不局限于文字,注重实操。 ......
单机 场景 环境 问题 Redis

分布式配置nacos搭建踩坑指南(下)

上一篇介绍了在配置nacos中的碰到的坑,这一篇介绍一下如何正确进行nacos的环境搭建和配置,所以本文分为两部分,第一部分为环境搭建,介绍如何安装和运行。第二部分为alibaba Sprint Boot配置,介绍如何正确配置。 注意:本文基于nacos 2.2.0,alibaba Spring B ......
分布式 指南 nacos

“堆外缓存”这玩意是真不错,我要写进简历了。

你好呀,我是歪歪。 之前在《3 招将吞吐量提升了 100%,现在它是我的了》这篇文章中,我在 OHC 堆外缓存上插了个眼: 这次就把这个眼给回收了吧,给你盘一下 OHC。 之前的文章里面说的是啥场景呢,我们先简单回顾一下。 就是一个服务的各项 JVM 的配置都比较合理的情况下,它的 GC 情况还是不 ......
缓存 玩意 简历 我要

05安装一个Hadoop分布式集群

安装一个Hadoop分布式集群 最小化的Hadoop已经可以满足学习过程中大部分需求,但是为了研究Hadoop集群运行机制,部署一个类生产的环境还是有必要的。因为集群机器比较少,笔者没有配置ssh,所以就需要在每一台机器上手动启动服务。启动上相对繁琐一些,优点是可以高度自定义集群中的任务节点数量,从 ......
分布式 集群 Hadoop

Java堆外缓存(一个很有意思的应用)

我们在开发过程中会遇到这样的场景:就是一个服务的各项 JVM 的配置都比较合理的情况下,它的 GC 情况还是不容乐观。分析之后发现有 2 个对象特别巨大,占了总存活堆内存的 90%以上。其中第 1 大对象是本地缓存, GC 之后对象一直存活。然后不久应用就会抛出OutOfMemoryError,那怎 ......
缓存 Java

Asp.Net Core中利用过滤器控制Nginx的缓存时间

前言 Web项目中很多网页资源比如html、js、css通常会做服务器端的缓存,加快网页的加载速度 一些周期性变化的API数据也可以做缓存,例如广告资源位数据,菜单数据,商品类目数据,商品详情数据,商品列表数据,公共配置数据等,这样就可以省去很多在服务端手动实现缓存的操作 最早资源缓存大部分都用Ex ......
过滤器 缓存 时间 Nginx Core

分布式事务 | 使用DTM 的Saga 模式

DTM 首创的子事务屏障技术,使得开发者基于DTM 提供的SDK能够轻松开发出更可靠的分布式应用,彻底将开发人员从网络异常的处理中解放出来,再也不用担心空补偿、防悬挂、幂等等分布式问题。如果要进行分布式事务框架的选型,DTM 将是不二之选。 ......
分布式 事务 模式 Saga DTM

分布式事务 | 使用 dotnetcore/CAP 的本地消息表模式

本地消息表模式,其作为柔性事务的一种,核心是将一个分布式事务拆分为多个本地事务,事务之间通过事件消息衔接,事件消息和上个事务共用一个本地事务存储到本地消息表,再通过定时任务轮询本地消息表进行消息投递,下游业务订阅消息进行消费,本质上是依靠消息的重试机制达到最终一致性。 ......
分布式 dotnetcore 事务 消息 模式

【Azure Cache for Redis】Python Django-Redis连接Azure Redis服务遇上(104, 'Connection reset by peer')

问题描述 使用Python连接Azure Redis服务,因为在代码中使用的是Django-redis组件,所以通过如下的配置连接到Azure Redis服务: CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", " ......
Redis Azure Django-Redis Connection Python

Linux上安装jdk Tomcat mysql redis等

1.安装JDk 1.1这里使用xshell中xfxp进行文件的上传,将jdk二进制包上传到Linux服务器上 下载地址:https://www.oracle.com/java/technologies/downloads/#java8 或者这里有下载好的安装包:链接:https://pan.baid ......
Tomcat Linux mysql redis jdk

Redis 异步客户端选型及落地实践

为了支持更加广泛的业务场景,可视化编排系统近期需要支持对缓存的操作功能,为保证编排系统的性能,服务的执行过程采用了异步的方式,因此我们考虑使用Redis的异步客户端来完成对缓存的操作。 ......
客户端 客户 Redis

开源分布式支持超大规模数据分析型数据仓库Apache Kylin实践-上

再下一城又一个实时多维交互式分析数仓利器,了解其特性和架构组成,进一步阐述相关概念和其生态圈;介绍作为开发测试最快捷方式的Docker单机部署;也基于Hadoop环境一步步部署最新v4.0.3二进制并解决遇到的问题,最后通过一个读取hive数据示例介绍kylin创建项目、选择数据源、创建Model、... ......
数据 数据分析 分布式 仓库 规模

开源分布式支持超大规模数据分析型数据仓库Apache Kylin实践-下

本篇先通过Kylin对连接条件、维度和度量限制的示例弄清Kylin的使用注意事项,在此基础上研究Kylin查询引擎,并配置spark查询下压实现没有cube的查询;理解Cube的构建优化,通过官方提供RestAPI实现动态灵活查询和cube构建,最后通过集成JDBC的Java代码实现简单查询操作。 ......
数据 数据分析 分布式 仓库 规模

.Net Core对于`RabbitMQ`封装分布式事件总线

首先我们需要了解到分布式事件总线是什么; 分布式事件总线是一种在分布式系统中提供事件通知、订阅和发布机制的技术。它允许多个组件或微服务之间的协作和通信,而无需直接耦合或了解彼此的实现细节。通过事件总线,组件或微服务可以通过发布或订阅事件来实现异步通信。 例如,当一个组件完成了某项任务并生成了一个事件 ......
分布式 总线 RabbitMQ 事件 Core

Python 同步和异步使用Redis集群的方法

目前在做Python项目用到同步和异步的方法使用Redis单机,现在要增加兼容Redis集群。也就说当前项目用到中同步单机,同步集群,异步单机,异步集群都用到了。 ......
集群 方法 Python Redis

Redis - 介绍与使用场景

Redis 每秒可以处理超过 10 万次读写操作,是已知性能最快的 key-value 数据库,称得上是必须要学会的知识。 ......
场景 Redis

(一) MdbCluster分布式内存数据库——基础架构介绍

(一) MdbCluster分布式内存数据库——基础架构介绍 这个项目是怎么开始的我已经有些记不清楚了,大概是原来的内存数据库很不好用,一次次地让我们踩坑,我又自以为是地觉得可以做一个更好的出来。自从拥有自己的团队以来,我思考最多的总是如何带着团队做出有意义和有价值的产品,而不是将时间浪费在无谓的琐 ......
分布式 MdbCluster 架构 内存 数据库

单线程架构的Redis如此之快的 4 个原因

前言 作为内存中数据存储,Redis 以其速度和性能着称,通常被用作大多数后端服务的缓存解决方案。 但是,在内部,Redis 采用单线程架构。 为什么单线程设计依然会有这么高的性能?如果利用多线程并发处理请求不是更好吗? 在本文中,让我们深入探讨为什么 Redis 才有单线程架构,依然如此之快,主要 ......
线程 架构 原因 Redis

分布式协议与算法-Raft算法

本文总结自:极客时间韩健老师的分布式协议与算法实战课程。 大家都知道,Raft算法属于Multi-Paxos算法,它是在Multi-Paxos思想的基础上,做了一些简化和限制。关于Paxos算法,博主在之前的文章有过总结,大家可以从这里跳转:分布式协议与算法-Paxos算法 关于Raft算法相关的开 ......
算法 分布式 Raft

Redis缓存的主要异常及解决方案

作者:京东物流 陈昌浩 1 导读 Redis 是当前最流行的 NoSQL数据库。Redis主要用来做缓存使用,在提高数据查询效率、保护数据库等方面起到了关键性的作用,很大程度上提高系统的性能。当然在使用过程中,也会出现一些异常情景,导致Redis失去缓存作用。 2 异常类型 异常主要有 缓存雪崩 缓 ......
缓存 解决方案 方案 Redis