- 博客(14)
- 收藏
- 关注
原创 Git使用
Git是Linux Torvalds为了帮助管理 Linux,内核开发而开发的一个开放源码的版本控制软件.特点是快速,开源,分布式管理系统.它可以对代码的修改进行回滚,将错误的代码剔除.或者简单地跟踪哪些人修改了代码的哪些行的内容.
2024-10-24 19:07:21
763
原创 Dubbo
Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC分布式服务框架,致力于提供高性能和透明化 的RPC远程服务调用方案,以及SOA服务治理方案。Spring Cloud Alibaba微服务开发框架集成 了Dubbo,可实现微服务对外暴露Dubbo协议的接口,Dubbo协议相比RESTful协议速度更快。以上是 Dubbo 的工作原理图,从抽象架构上分为两层:服务治理抽象控制面 和 Dubbo 数据面。服务消费者 (Dubbo Consumer),发起业务调用或 RPC 通信的 Dubbo 进程。
2024-10-23 21:59:13
789
原创 Feign远程调用
Feign是Spring Cloud提供的⼀个声明式的伪Http客户端, 它使得调用远程服务就像调用本。⼀般情况下,默认值就能满足我们使用,如果要自定义时,只需要创建自定义的@Bean覆盖默认Bean即可。默认集了Ribbon, 所以在Nacos下使用Fegin默认就实现了负载均衡的效果。因此提高Feign的性能主要手段就是使用连接池代替默认的URLConnection。HEADERS:在BASIC的基础上,额外记录了请求和响应的头信息。FULL:记录所有请求和响应的明细,包括头信息、请求体、元数据。
2024-10-23 21:40:10
380
原创 Sentinel流量控制
热点参数限流会统计传入参数中的热点参数,并根据配置的限流阈值与模式,对包含热点参数的资源调用进行限流。热点参数限流可以看做是一种特殊的流量控制,仅对包含热点参数的资源调用生效。Sentinel 利用 LRU 策略统计最近最常访问的热点参数,结合令牌桶算法来进行参数级别的流控。热点参数限流支持集群模式。
2024-10-21 19:29:02
964
原创 Sentinel入门
Sentinel是阿⾥巴巴开源的⼀款微服务流量控制组件。官⽹地址:Sentinel 具有以下特征:丰富的应⽤场景:Sentinel 承接了阿⾥巴巴近 10 年的双⼗⼀⼤促流量的核⼼场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填⾕、集群流量控制、实时熔断下游不可⽤应⽤等。完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接⼊应⽤的单台机器秒级数据,甚⾄ 500 台以下规模的集群的汇总运⾏情况。
2024-10-18 15:08:20
338
原创 Swagger入门
Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务。使用 Swagger,就是把相关的信息存储在它定义的描述文件里面(yml或json格式),再通过维护这个描述 文件可以去更新接口文档,以及生成各端代码。而Springfox-swagger,则可以通过扫描代码去生成这个 描述文件,连描述文件都不需要再去维护了。所有的信息,都在代码里面了。代码即接口文档,接口文 档即代码。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。
2024-10-16 19:12:47
856
原创 Redis 逐出算法
之所以不使用 LRU算法,是因为需要消耗大量的额外的内存,需要对现有的数据结构进行较大的改造。Redis 为实现近似 LRU 算法,它给每个 key 增加了一个额外的小字段,这个字段的长度是 24 个 bit,也就是最后一次被访问的时间戳。这个算法也很简单,就是随机采样出 5(可以配置) 个 key,然后淘汰掉最旧的 key,如果淘汰后内存还是超出 maxmemory,那就继续随机采样淘汰,直到内存低于maxmemory 为止。)达到最大内存后的,对被挑选出来的数据进行删除的策略。
2024-10-13 18:07:41
558
原创 Redis 缓存预热,缓存雪崩,缓存击穿,缓存穿透
缓存预热就是系统启动前,提前将相关的缓存数据直接加载到缓存系统。避免在用户请求的时候,先查 询数据库,然后再将数据缓存的问题!用户直接查询事先被预热的缓存数据请求数量较高主从之间数据吞吐量较大,数据同步操作频度较高因为刚刚启动时,缓存中没有任何数据日常例行统计数据访问记录,统计访问频度较高的热点数据将统计结果中的数据分类,根据级别,redis优先加载级别较高的热点数据。
2024-10-13 17:56:49
1873
原创 Elasticsearch 倒排索引
Elasticsearch 是一种高度可伸缩的全文检索和分析引擎,其底层基于 Apache Lucene,Lucene 本身早就是一种闻名于世的全文检索和工具包。Elasticsearch 在其基础上进行了封装,不仅继承了 Lucene 的所有优点,还大大降低了使用和开发的复杂度。不仅如此,ES 也拥有强大的数据存储能力,它所检索的数据不依赖于外部数据源,而是由 ES 统一管理。ES 还具备创建数据分片和数据副本的能力,可以满足大数据量下的高可用性和高性能要求。
2024-09-27 16:49:12
595
原创 Spring Bean的生命周期
成为一个完整对象,最终存 储到单例池中,这个过程被称为Spring Bean。工厂后处理器相似,它也是一个接口,实现了该接口并被容器管理的。就会 回调该接口的方法,用于对BeanDefinition。是一个接口规范,实现了该接口的类只要交由。实例化之后,即通过反射创建出对象之后,到。对外开发的重要扩展点,允许我们介入到。的执行等,其中有一个对外进行扩展的点。, 会在流程节 点上被Spring。被实例化后,到最终缓存到名为。Spring的后处理器是。实例化之后,填充到单例池。单例池之前,中间会经过。
2024-09-22 19:36:59
664
原创 Spring 循环依赖
含义:多个实体之间相互依赖并形成闭环的情况就叫做循环依赖,也叫做循环引用"。简单来说就是A依赖B的同时B也依赖了A,就像下面这样用代码来体现,就如同下面这样。
2024-09-17 19:25:45
1734
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人