- 博客(310)
- 资源 (4)
- 收藏
- 关注

原创 【存储中间件】Redis核心技术与实战(五):Redis缓存使用问题(BigKey、数据倾斜、Redis脑裂、多级缓存)、互联网大厂中的Redis
bigkey是指key对应的value所占的内存空间比较大,例如一个字符串类型的value可以最大存到512MB,一个列表类型的value最多可以存储23-1个元素。如果按照数据结构来细分的话,一般分为字符串类型bigkey和非字符串类型bigkey。字符串类型:体现在单个value值很大,一般认为超过10KB就是bigkey,但这个值和具体的OPS相关。非字符串类型:哈希、列表、集合、有序集合,体现在元素个数过多。bigkey无论是空间复杂度和时间复杂度都不太友好,下面我们将介绍它的危害。
2025-03-20 05:00:00
11826
40

原创 【AI大模型】Ollama部署本地大模型DeepSeek-R1,交互界面Open-WebUI,RagFlow构建私有知识库
DeepSeek官网DeepSeek(深度求索)是一家专注于实现通用人工智能(AGI)的中国科技公司,致力于通过技术探索与创新,推动智能技术的广泛应用。Ollama 是一个强大的工具,旨在简化大型语言模型的部署和推理过程。它通过模型压缩和优化技术,使得在本地或边缘设备上运行 AI 模型变得高效且易于管理。无论是开发者、研究人员还是企业用户,Ollama 都能提供灵活和支持,满足多种应用场景的需求。
2025-02-11 05:00:00
41271
149
原创 【微服务架构】SpringCloud Alibaba(七):Nacos 2.1.0 作为注册中心(源码分析之服务启动入口、实例注册、注册表)
找入口的方式:自动装配类 spring.factories事件驱动:NacosAutoServiceRegistration实现了applicationListener接口判断变量 1、 debug 2、 全文搜索 定位赋值位置通过ephemeral的值判断是grpc通信,还是http通信,通过这我们能判断ap模式是用的grpc模式,cp模式是用http通信。
2025-04-02 05:00:00
233
11
原创 【微服务架构】SpringCloud Alibaba(七):Nacos 2.1.0 作为注册中心(源码分析之服务发现、服务订阅、服务变更推送)
服务启动时候读取磁盘中数据放到缓存读取磁盘数据 如果没有则发送请求获取数据,然后写到缓存读取磁盘数据,如果有则判断时间是否过期,过期则发送请求,写到缓存读取数据是一个定时任务每6秒执行一次,如果失败就会延长,但最大时长是1分钟这里主要是从注册表中获取数据,所以理解这里需要看一下我们的注册表中,各个数据之间的关系。
2025-04-02 05:00:00
143
11
原创 【微服务架构】SpringCloud Alibaba(六):SpringCloud Gateway网关(网关介绍、路由谓词工厂配置)
网关作为流量的入口,常用的功能包括路由转发,权限校验,限流等。Spring Cloud Gateway 是Spring Cloud官方推出的第二代网关框架,定位于取代 Netflix Zuul。相比 Zuul 来说,Spring Cloud Gateway 提供更优秀的性能,更强大的有功能。Spring Cloud Gateway 是由 WebFlux + Netty + Reactor 实现的响应式的 API 网关。它不能在传统的 servlet 容器中工作,也不能构建成 war 包。
2025-04-01 05:00:00
1094
15
原创 【微服务架构】SpringCloud Alibaba(六):SpringCloud Gateway网关(过滤器工厂配置)
pre : Gateway转发请求之前post : Gateway转发请求之后自定义过滤器工厂-方式1继承: AbstractGatewayFilterFactory参考示例:org.springframework.cloud.gateway.filter.factory.RequestSizeGatewayFilterFactoryspring:cloud:gateway:routes:filters:args:# 单位字节自定义过滤器工厂-方式2。
2025-04-01 05:00:00
1439
13
原创 【微服务架构】SpringCloud Alibaba(五):服务容错 Sentinel(降级规则、热点规则、授权规则、系统规则、集群规则)
如果依赖的服务出现了不稳定的情况,请求的响应时间变长,那么调用服务的方法的响应时间也会变长,线程会产生堆积,最终可能耗尽业务自身的线程池,服务本身也变得不可用。)内请求数目大于设置的最小请求数目,并且慢调用的比例大于阈值,则接下来的熔断时长内请求会自动被熔断。Spring Cloud Alibaba是阿里巴巴提供的一站式微服务解决方案,是Spring Cloud体系中的一个重要分支,它将阿里巴巴在微服务领域的实践经验和开源技术进行了整合,为开发者提供了一系列便捷的工具和组件,用于构建分布式微服务应用。
2025-03-31 05:00:00
1928
14
原创 【微服务架构】SpringCloud Alibaba(五):服务容错 Sentinel(规则持久化、RestTemplate和Feign整合Sentinel、限流算法)
假设我们仍然设定1秒内允许通过的请求是200个,但是在这里我们需要把1秒的时间分成多格,假设分成5格(格数越多,流量过渡越平滑),每格窗口的时间大小是200毫秒,每过200毫秒,就将窗口向前移动一格。图中将窗口划为5份,每个小窗口中的数字表示在这个窗口中请求数,所以通过观察上图,可知在当前时间快(200毫秒)允许通过的请求数应该是70而不是200(只要超过70就会被限流),因为我们最终统计请求数时是需要把当前窗口的值进行累加,进而得到当前请求数来判断是不是需要进行限流。但是在实际情况下,流量往往是突发的。
2025-03-31 05:00:00
2073
13
原创 【微服务架构】SpringCloud Alibaba(五):服务容错 Sentinel(常见容错方案、sentinel基本操作)
Sentinel (分布式系统的流量防卫兵) 是阿里开源的一套用于服务容错的综合性解决方案。它以流量为切入点, 从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。丰富的应用场景:Sentinel承接了阿里巴巴近 10 年的双十一大促流量的核心场景, 例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。完备的实时监控:Sentinel提供了实时的监控功能。
2025-03-30 05:00:00
3373
15
原创 【微服务架构】SpringCloud Alibaba(五):服务容错 Sentinel(sentinel使用、流控规则)
/ 务必保证 finally 会被执行try {// 资源名可使用任意有业务语义的字符串,注意数目不能太多(超过 1K),超出几千请作为参数传入而不要直接作为资源名// EntryType 代表流量类型(inbound/outbound),其中系统规则只对 IN 类型的埋点生效entry = SphU.entry("自定义资源名");// 被保护的业务逻辑// 资源访问阻止,被限流或被降级// 进行相应的处理操作// 若需要配置降级规则,需要通过这种方式记录业务异常。
2025-03-30 05:00:00
3000
12
原创 【微服务架构】SpringCloud Alibaba(三):负载均衡 LoadBalance
Spring Cloud LoadBalancer是Spring Cloud官方自己提供的客户端负载均衡器,抽象和实现,用来替代Ribbon(已经停更),import org// 服务列表 private ObjectProvider < ServiceInstanceListSupplier > serviceInstanceListSupplierProvider;} /*** 使用随机数获取服务* @return。
2025-03-29 05:00:00
3577
14
原创 【微服务架构】SpringCloud Alibaba(四):深入讲解 Feign
到这⾥我们基本上可以知道:⽐如当服务B的getById⽅法被调⽤时、会调⽤服务A的getById⽅法,⽽服务A这⾥因为是通过Feign声明式调⽤的,肯定会先通过服务A的Feign动态代理FeignInvocationHandler,从动态代理中的Map<Method, MethodHandler>中、找到具体某个⽅法的SynchronousMethodHandler,然后执⾏该SynchronousMethodHandler中的invoke⽅法来处理⽅法的逻辑。
2025-03-29 05:00:00
3389
12
原创 【微服务架构】SpringCloud Alibaba(二):Nacos作为配置中心(Config数据模型、集成SpringBoot、动态刷新原理)
这个也是在之前的图中讲到,他是将客户端每次请求都会放到这个quene里面,放到这里面就是,当页面或者通过api调用修改了配置,修改配置之后会发送一个消息,订阅消息一端就会遍历我们刚刚这个allSubs队列当中,看看这个队列里面请求的配置发生了变化,如果发生变化的配置和请求的客户端监听的配置匹配上之后,就会立即将变更的内容发挥给客户端。这里面的代码就是将客户端请求,进行个返回,那返回之前他会干什么,他会进行比较, 他会比较我们监听的配置和我本身的配置是否发生了变化,他的执行的代码在他的run当中,
2025-03-28 05:00:00
3827
13
原创 【微服务架构】SpringCloud Alibaba(三):负载均衡 Ribbon
这个拦截器里面就是上面弄的LoadBalancerInterceptor。request.getURI(), 这个不用我多解释了吧,restTemplate就是发送http请求,这里获取他的请求链接,然后获取他的host,他的host是什么就是nx-stock,就是serviceName,然后将这serviceName传递到我们的execute里面,我们推想这里很可能对我们serviceName进行解析,从我们的nacos注册中心获取注册列表,然后通过负均衡选择一个合适的地址,进行调用。
2025-03-28 05:00:00
3628
12
原创 【微服务架构】SpringCloud Alibaba(一):Nacos作为注册中心(注册中心原理、源码解析)
Spring Cloud Alibaba是阿里巴巴提供的一站式微服务解决方案,是Spring Cloud体系中的一个重要分支,它将阿里巴巴在微服务领域的实践经验和开源技术进行了整合,为开发者提供了一系列便捷的工具和组件,用于构建分布式微服务应用。以下是其详细介绍:首先服务在启动的时候会将数据注册到注册中心,这样就服务只要启动就可以对外提供服务了, 那么同时他也要维持一个心跳,心跳的意义就是某个服务挂掉,我肯定让注册中心知道,如果服务挂了还没有告诉注册中心,
2025-03-27 05:00:00
5406
16
原创 【微服务架构】SpringCloud Alibaba(一):Nacos作为注册中心(集群搭建)
Nacos集群通常由多个Nacos Server节点组成,这些节点通过网络相互连接并协同工作。客户端与Nacos集群进行通信,获取服务列表、配置信息等。
2025-03-27 05:00:00
4893
13
原创 【微服务架构】SpringCloud(八):网关 SpringCloud Gateway
网关是一个服务,是访问内部系统的唯一入口,提供内部服务的路由中转,额外还可以在此基础上提供如身份验证、监控、负载均衡、限流、降级与应用检测等功能。MDB:ribbon:// 各种逻辑~~~~ System . out . println("xxoo");// 各种逻辑~~~~ System . out . println("xxoo");// 各种逻辑~~~~ System . out . println("xxoo");
2025-03-26 05:00:00
5163
19
原创 【微服务架构】SpringCloud Alibaba(一):Nacos作为注册中心(安装以及编译、领域模型、使用)
我们可以设想这样的一个场景,比方阿里只在杭州部署一个淘宝的集群,那我们北方的人民去访问,是不是就会相对较慢,一般都会再南方和北方都设置两个集群。当北方人民访问的时候一般我们都访问北京这个集群的服务,其他的服务都会在北京的集群里面互相调用,而不会垮cluster进行访问,这样在同一个数据中心访问都是比较快的。Instance: 这个就是实例,并且是多实例的,这样防止单点问题,从而实现高可用,当北京集群坏了,他会可以访问上海的集群。当一个实例挂掉,另一个实例会替代,当一个集群挂掉,另一个集群会替代上。
2025-03-26 05:00:00
5324
14
原创 【微服务架构】SpringCloud(六):网关 Zuul、链路追踪 Sleuth、Spring Admin健康检查
Sleuth是Spring cloud的分布式跟踪解决方案。span(跨度),基本工作单元。一次链路调用,创建一个span,span用一个64位id唯一标识。包括:id,描述,时间戳事件,spanId,span父id。span被启动和停止时,记录了时间信息,初始化span叫:root span,它的span id和trace id相等。
2025-03-25 05:00:00
6021
71
原创 【微服务架构】SpringCloud(七):配置中心 Spring Cloud Config
存放配置的地方:git ,本地文件 等。从 1 读取配置。是 config server 的客户端 消费配置。
2025-03-25 05:00:00
6838
47
原创 【微服务架构】SpringCloud(四):声明式服务调用 Feign
接上面例子,此例子和上面例子实现的功能一样。记得两者取一个即可。说明用属性而不是用属性中的configuration。定义拦截器@Override} } 配置文件feign:client:config:再次访问,测试Ok。扩展feign:client:config:通用配置feign:client:config:default:属性配置比Java代码优先级高。也可通过配置设置java代码优先级高。
2025-03-24 05:00:00
7240
13
原创 【微服务架构】SpringCloud(五):容错组件 Hystrix
线程池隔离技术,是用 Hystrix 自己的线程去执行调用;而信号量隔离技术,是直接让 tomcat 线程去调用依赖服务。信号量隔离,只是一道关卡,信号量有多少,就允许多少个 tomcat 线程通过它,然后去执行。Hystrix是Netflix开源的一个类库,用于隔离远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。信号量隔离主要维护的是Tomcat的线程,不需要内部线程池,更加轻量级。spring cloud 用的是 hystrix,是一个容错组件。
2025-03-24 05:00:00
6282
13
原创 【微服务架构】SpringCloud(二):EurekaClient、自我保护机制、多网卡、健康检查、安全配置、服务间调用Rest
org.springframework.cloud.client.discovery定义用来服务发现的客户端接口,是客户端进行服务发现的核心接口,是spring cloud用来进行服务发现的顶级接口,在common中可以看到其地位。服务器有多个网卡,eh0,eh1,eh2,只有eh0可以让外部其他服务访问进来,而Eureka client将eh1和eh2注册到Eureka server上,这样其他服务就无法访问该微服务了。默认情况下,注册的应用实例每半分钟续租一次,那么一分钟心跳两次,因此 x 2。
2025-03-23 05:00:00
6894
17
原创 【微服务架构】SpringCloud(三):RestTemplate、Ribbon
当系统面临大量的用户访问,负载过高的时候,通常会增加服务器数量来进行横向扩展(集群),多个服务器的负载需要均衡,以免出现服务器负载不均衡,部分服务器负载较大,部分服务器负载较小的情况。而在Spring Cloud中我们如果想要使用客户端负载均衡,方法很简单,使用@LoadBalanced注解即可,这样客户端在发起请求的时候会根据负载均衡策略从服务端列表中选择一个服务端,向该服务端发起网络请求,从而实现负载均衡。在服务端负载均衡中,客户端节点只知道单一服务代理的地址,服务代理则知道所有服务端的地址。
2025-03-23 05:00:00
8111
12
原创 【微服务架构】SpringCloud(一):服务注册与发现(Eureka)、使用Spring Boot2.x Actuator监控应用
背景:在传统应用中,组件之间的调用,通过有规范的约束的接口来实现,从而实现不同模块间良好的协作。但是被拆分成微服务后,每个微服务实例的网络地址都可能动态变化,数量也会变化,使得原来硬编码的地址失去了作用。需要一个中心化的组件来进行服务的登记和管理。概念:实现服务治理,即管理所有的服务信息和状态。注册中心相当于买票乘车,只看有没有票(有没有服务),有就去买票(获取注册列表),然后乘车(调用)。不必关心有多少火车在运行。注册中心好处:不用关心有多少提供方。
2025-03-22 05:00:00
7519
17
原创 【微服务架构】SpringCloud(二):Eureka原理、服务注册、Euraka单独使用
来自Eureka客户端的所有操作可能需要一段时间才能反映到Eureka服务器上,然后反映到其他Eureka客户端上。自定义元数据:可以使用eureka.instance.metadata-map配置,这些元数据可以在远程客户端中访问,但是一般不改变客户端行为,除非客户端知道该元数据的含义。在获得增量之后,Eureka客户机通过比较服务器返回的实例计数来与服务器协调信息,如果由于某种原因信息不匹配,则再次获取整个注册表信息。元数据可以配置在eureka服务器和eureka的客户端上。
2025-03-22 05:00:00
7555
13
原创 【存储中间件】Redis核心技术与实战(六):Redis的设计与实现(缓存淘汰算法、过期策略与惰性删除)
比如我现在要进行LRU,那么首先拿到当前的全局时钟,然后再找到内部时钟与全局时钟距离时间最久的(差最大)进行淘汰,这里值得注意的是全局时钟只有24位,按秒为单位来表示才能存储194天,所以可能会出现key的时钟大于全局时钟的情况,如果这种情况出现那么就两个相加而不是相减来求最久的key。当字典的某个元素被访问时,它在链表中的位置会被移动到表头。它的全称是Least Frequently Used,它的核心思想是根据key的最近被访问的频率进行淘汰,很少被访问的优先被淘汰,被访问的多的则被留下来。
2025-03-21 05:00:00
8250
13
原创 【微服务架构】SpringCloud(一):服务进化、微服务
传统服务到微服务进化。《传统到分布式演进》单体应用-> SOA ->微服务课外扩展:持续集成,持续部署,持续交付。集成:是指软件个人研发的部分向软件整体部分集成,以便尽早发现个人开发部分的问题;部署: 是代码尽快向可运行的开发/测试节交付,以便尽早测试;交付: 是指研发尽快向客户交付,以便尽早发现生产环境中存在的问题。如果说等到所有东西都完成了才向下个环节交付,导致所有的问题只能在最后才爆发出来,解决成本巨大甚至无法解决。
2025-03-21 05:00:00
8288
11
原创 【存储中间件】Redis核心技术与实战(六):Redis的设计与实现(数据结构和内部编码、线程和IO模型)
多线程模型虽然在某些方面表现优异,但是它却引入了程序执行顺序的不确定性,带来了并发读写的一系列问题,增加了系统复杂度、同时可能存在线程切换、甚至加锁解锁、死锁造成的性能损耗。Redis 为各种文件事件需求编写了多个处理器,若客户端连接Redis,对连接服务器的各个客户端进行应答,就需要将socket映射到连接应答处理器写数据到Redis,接收客户端传来的命令请求,就需要映射到命令请求处理器从Redis读数据,向客户端返回命令的执行结果,就需要映射到命令回复处理器当主服务器和从服务器进行复制操作时,
2025-03-20 05:00:00
8725
11
原创 【存储中间件】Redis核心技术与实战(四):Redis高并发高可用(哨兵Redis Sentinel)
当Sentinel主观下线的节点是主节点时,该Sentinel节点会通过sentinel is-master-down-by-addr命令向其他Sentinel节点询问对主节点的判断,当超过<quorum>个数,Sentinel节点认为主节点确实有问题,这时该Sentinel节点会做出客观下线的决定,这样客观下线的含义是比较明显了,也就是大部分Sentinel节点都对主节点的下线做了同意的判定,那么这个判定就是客观的。假如Sentinel节点对于主节点已经做了客观下线,那么是不是就可以立即进行故障转移了?
2025-03-19 05:00:00
9465
16
原创 【存储中间件】Redis核心技术与实战(五):Redis缓存使用问题(数据一致性、缓存穿透/击穿/雪崩、热点Key)
简单地来说,就是在缓存失效的时候(判断拿出来的值为空),不是立即去load db,而是先使用缓存工具的某些带成功操作返回值的操作(比如Redis的SETNX或者Memcache的ADD)去set一个mutex key,当操作返回成功时,再进行load db的操作并回设缓存;是指查询一个根本不存在的数据,缓存层和存储层都不会命中,于是这个请求就可以随意访问数据库,这个就是缓存穿透,缓存穿透将导致不存在的数据每次请求都要到存储层去查询,失去了缓存保护后端存储的意义。更新的时候,先更新数据库,然后再删除缓存。
2025-03-19 05:00:00
9685
13
原创 【存储中间件】Redis核心技术与实战(四):Redis高并发高可用(Redis集群 Smart客户端、集群原理)
配置纪元是一个只增不减的整数,每个主节点自身维护一个配置纪元(clusterNode .configEpoch)标示当前主节点的版本,所有主节点的配置纪元都不相等,从节点会复制主节点的配置纪元。每个从节点都要检查最后与主节点断线时间,判断是否有资格替换故障的主节点。另外,当集群 Master 节点个数小于 3 个的时候,或者集群可用节点个数为偶数的时候,基于 fail 的这种选举机制的自动主从切换过程可能会不能正常工作,一个是标记 fail 的过程,一个是选举新的 master 的过程,都有可能异常。
2025-03-18 05:00:00
10128
17
原创 【存储中间件】Redis核心技术与实战(四):Redis高并发高可用(Redis主从复制)
在统计信息中可以看到从节点slave信息,分别记录了从节点的ip和 port,从节点的状态,offset表示当前从节点的复制偏移量,master_repl_offset表示当前主节点的复制偏移量,两者的差值就是当前从节点复制延迟量。当从节点(slave)正在复制主节点(master)时,如果出现网络闪断或者命令丢失等异常情况时,从节点会向主节点要求补发丢失的命令数据,如果主节点的复制积压缓冲区内存在这部分数据则直接发送给从节点,这样就可以保持主从节点复制的一致性。默认情况下,Redis都是主节点。
2025-03-18 05:00:00
10199
13
原创 【存储中间件】Redis核心技术与实战(四):Redis高并发高可用(Redis集群介绍与搭建)
Redis集群中,在握手成功后,连个节点之间会定期发送ping/pong消息,交换数据信息,集群中节点数量越多,消息体内容越大,比如说10个节点的状态信息约1kb,同时redis集群内节点,每秒都在发ping消息。如下图所示,三个节点真实节点:Node1、Node2和Node3,每个真实节点虚拟出三个虚拟节点:X#V1、X#V2和X#V3,这样每个真实节点所负责的hash空间不再是连续的一段,而是分散在环上的各处,这样就可以将局部的压力均衡到不同的节点,虚拟节点越多,分散性越好,理论上负载就越倾向均匀。
2025-03-17 05:00:00
11413
26
原创 【存储中间件】Redis核心技术与实战(四):Redis高并发高可用(Redis集群伸缩、请求路由)
由于键对应槽是5798,不属于6900节点,则回复 MOVED (slot}{ip} {port]格式重定向信息,重定向信息包含了键所对应的槽以及负责该槽的节点地址,根据这些信息客户端就可以向正确的节点发起请求。在集群模式下,Redis接收任何键相关命令时首先计算键对应的槽,再根据槽找出所对应的节点,如果节点是自身,则处理键命令;首先来看我们之前搭建的集群槽和数据与节点的对应关系。三个主节点分别维护自己负责的槽和对应的数据,如果希望加入1个节点实现集群扩容时,需要通过相关命令把一部分槽和数据迁移给新节点。
2025-03-17 05:00:00
11155
11
原创 【存储中间件】Redis核心技术与实战(三):Redis底层原理(持久化 RDB AOF)
该状态开启后,如果执行bgrewriteaof命令,则会把当前内存中已有的数据弄成二进程存放在aof文件中,这个过程模拟了rdb生成的过程,然后Redis后面有其他命令,在触发下次重写之前,依然采用AOF追加的方式。加载损坏的AOF 文件时会拒绝启动,对于错误格式的AOF文件,先进行备份,然后采用redis-check-aof --fix命令进行修复,对比数据的差异,找出丢失的数据,有些可以人工修改补全。随着命令不断写入AOF,文件会越来越大,为了解决这个问题,Redis引入AOF重写机制压缩文件体积。
2025-03-16 05:00:00
11276
16
原创 【存储中间件】Redis核心技术与实战(三):Redis底层原理(Redis分布式锁)
Redlock 只有建立在「时钟正确」的前提下,才能正常工作,如果你可以保证这个前提,那么可以拿来使用。但是时钟偏移在现实中是存在的:第一,从硬件角度来说,时钟发生偏移是时有发生,无法避免。例如,CPU 温度、机器负载、芯片材料都是有可能导致时钟发生偏移的。第二,人为错误也是很难完全避免的。所以,Redlock尽量不用它,而且它的性能不如单机版 Redis,部署成本也高,优先考虑使用主从+ 哨兵的模式实现分布式锁(只会有很小的记录发生主从切换时的锁丢失问题)。
2025-03-16 05:00:00
11806
11
原创 【存储中间件】Redis核心技术与实战(二):Redis高级特性与应用(慢查询、Pipeline、事务)
事务是Redis实现在服务器端的行为,用户执行MULTI命令时,服务器会将对应这个用户的客户端对象设置为一个特殊的状态,在这个状态下后续用户执行的查询命令不会被真的执行,而是被服务器缓存起来,直到用户执行EXEC命令为止,服务器会将这个用户对应的客户端对象中缓存的命令按照提交的顺序依次执行。所谓慢查询日志就是系统在命令执行前后计算每条命令的执行时间,当超过预设阀值,就将这条命令的相关信息(例如:发生时间,耗时,命令的详细信息)记录下来,Redis也提供了类似的功能。另外discard命令是回滚。
2025-03-15 05:00:00
14806
19
原创 【存储中间件】Redis核心技术与实战(二):Redis高级特性与应用(Lua、Redis与限流)
先有一个桶,桶的容量是固定的。以任意速率向桶流入水滴,如果桶满了则溢出(被丢弃)。桶底下有个洞,按照固定的速率从桶中流出水滴。
2025-03-15 05:00:00
11925
13
原创 【存储中间件】Redis核心技术与实战(一):Redis入门与应用(高级数据结构:Bitmaps、HyperLogLog、GEO)
1970 年布隆提出了一种布隆过滤器的算法,用来判断一个元素是否在一个集合中。这种算法由一个二进制数组和一个 Hash 算法组成。本质上布隆过滤器是一种数据结构,比较巧妙的概率型数据结构(probabilistic data structure),特点是高效地插入和查询,可以用来告诉你 “某样东西一定不存在或者可能存在”。相比于传统的 List、Set、Map 等数据结构,它更高效、占用空间更少,但是缺点是其返回的结果是概率性的,而不是确切的。
2025-03-14 05:00:00
12845
31
【自然语言处理(NLP)】基于Transformer架构的预训练语言模型:BERT 训练之数据集处理
2025-01-28
【自然语言处理(NLP)】机器翻译之数据处理(数据收集、数据清洗、数据分词、数据标注、数据划分)
2025-01-23
Nacos 是阿里巴巴开源的一个动态服务发现、配置管理和服务管理平台,旨在帮助开发者更轻松地构建、部署和管理微服务架构 它整合了服务注册与发现、配置管理以及分布式协调等功能,为云原生应用提供了统一的解
2024-12-16
年会抽奖小平台,点开即用 在lottery.js文件中搜索:技术部,修改此处即可 有多少人就设置多少个元素
2024-12-16
有没有做过外汇交易MetaTrader 4平台相关业务的
2024-12-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人