饥饿 机制spring ribbon

Spring项目中用了这种解耦模式,经理对我刮目相看

前言 不知道大家在项目中有没有遇到过这样的场景,根据传入的类型,调用接口不同的实现类或者说服务,比如根据文件的类型使用 CSV解析器或者JSON解析器,在调用的客户端一般都是用if else去做判断,比如类型等于JSON,我就用JSON解析器,那如果新加一个类型的解析器,是不是调用的客户端还要修改呢 ......
解耦 刮目相看 中用 模式 经理

Redis持久化机制

全量同步与增量同步的区别 全量同步:就是每天定时(避开高峰期)或者采用一个周期实现将数据拷贝到一个地方也就是Rdb存储。 增量同步:比如采用对行为的操作实现对数据的同步,也就是AOF。 全量与增量的比较:增量同步比全量同步更加消耗服务器的内存,但是能够更加的保证数据的同步。 RDB与AOF实现持久化 ......
机制 Redis

深入理解 OpenMP 线程同步机制

在本篇文章当中主要给大家介绍了一些经常使用的 OpenMP 用于线程之间同步的指令,并且用实际例子分析它内部的工作机制,以及我们改如何使用 nowait 优化程序的性能,以上就是本篇文章的所有内容希望大家有所收获! ......
线程 机制 OpenMP

解读JVM级别本地缓存Caffeine青出于蓝的要诀3 —— 讲透Caffeine的数据驱逐淘汰机制与用法

上一篇文章中我们聊了Caffeine的同步、异步的数据回源方式。本篇文章我们再一起研讨下经Caffeine改良过的异步数据驱逐处理实现,以及Caffeine支持的多种不同的数据淘汰驱逐机制和对应的实际使用。 ......
Caffeine 青出于蓝 要诀 缓存 级别

【kubernetes入门到精通】Kubernetes的健康监测机制以及常见ExitCode问题分析「探索篇」

无论是在微服务体系还是云原生体系的开发迭代过程中,通常都会以 Kubernetes 进行容器化部署,但是这也往往带来了很多意外的场景和情况。例如,虽然我们已经将 JVM 堆内存设置为小于 Docker 容器中内存及 K8S 的 Pod 的内存,但是还是会被 K8s 给无情的杀掉(Kill -9 / ... ......
kubernetes Kubernetes ExitCode 机制 常见

Spring Cloud Alibaba组件之Nacos

目录结构: 一、Spring Cloud Alibaba简介 二、使用版本情况 三、什么是Nacos? 四、Nacos运行环境部署 五、Nacos注册中心 六、Nacos命名空间和分组 七、Nacos配置中心 八、基于profile多环境配置 九、Nacos配置中心动态刷新 十、Nacos数据持久化 ......
组件 Alibaba Spring Cloud Nacos

Spring Cloud Alibaba组件之Sentinel

目录 一 引入Sentinel学习 二 Sentinel入门 三 搭建Sentinel Dashboard 四 Springboot项目接入Sentinel 五 接入限流埋点 六 限流配置 七 熔断降级 八 熔断降级Spring Cloud示例 九 黑白名单(授权规则) 十 持久化 十一 Sprin ......
组件 Sentinel Alibaba Spring Cloud

从Spring中学到的【2】--容器类

容器类作为数据的载体,在Spring源码中随处可见。理解了容器类的概念,极大地8降低了我们的心智负担,从而关注更重要的代码逻辑与结构。 ......
容器 中学 Spring

Apache Dubbo 官方正式发布 Spring 6 & Spring Boot 3 支持

Dubbo 简介 Apache Dubbo 是一款 RPC 服务开发框架,用于解决微服务架构下的服务治理与通信问题,官方提供了 Java、Golang 等多语言 SDK 实现。使用 Dubbo 开发的微服务原生具备相互之间的远程地址发现与通信能力, 利用 Dubbo 提供的丰富服务治理特性,可以实现 ......
Spring 官方 Apache Dubbo Boot

从源码层面深度剖析Spring循环依赖

作者:郭艳红 以下举例皆针对单例模式讨论 图解参考 https://www.processon.com/view/link/60e3b0ae0e3e74200e2478ce 1、Spring 如何创建Bean? 对于单例Bean来说,在Spring容器整个生命周期内,有且只有一个对象。 Sprin ......
层面 源码 深度 Spring

深入理解 MySQL 的事务隔离级别和 MVCC 机制

前言 我们都知道 MySQL 实现了 SQL 标准中的四个隔离级别,但是具体是如何实现的可能还一知半解,本篇博客将会从代码层面讲解隔离级别的实现方式,下面进入正题。 事务 考虑这样一个场景:博主向硝子酱的微信转了 520 块钱,在余额充足的正常情况下博主的账户余额会少 520 块,而硝子酱则会多 5 ......
级别 机制 事务 MySQL MVCC

Vue中关于数组与对象修改触发页面更新的机制与原理简析

Vue中关于数组与对象修改触发页面更新的机制与原理简析 相关问题 数组 使用索引直接赋值与直接修改数组length时,不会触发页面更新。 例如: <script> export default { name: "HomeView", data: () => ({ list1: ["A", "B"], ......
数组 原理 对象 机制 页面

使用Spring Reactor优化推荐流程

1. 背景 公司有一个推荐系统Rec,这个系统的主要功能是: 向外部系统提供推荐接口 根据请求获取推荐策略 根据推荐策略完成推荐的召回、过滤、打分、排序阶段 Rec作为微服务中的一环,本身不存储召回的物料信息,也不存储用户和物料的特征信息,它负责就是对各个服务的组合和流转 其流程如下: 2. 问题 ......
流程 Reactor Spring

微服务开发平台 Spring Cloud Blade 部署实践

本文介绍使用 Rainbond 快速部署 Spring Cloud Blade 微服务平台。Spring Cloud Blade 是一个由商业级项目升级优化而来的微服务架构,采用Spring Boot 2.7 、Spring Cloud 2021 等核心技术构建,完全遵循阿里巴巴编码规范。提供基于 ......
开发平台 Spring Cloud Blade 平台

动态更改Spring定时任务Cron表达式的优雅方案

"Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris." - Larry Wall “程序员的美德:懒惰,不耐烦 ......
表达式 任务 方案 动态 Spring

【深入浅出Spring原理及实战】「源码原理实战」从底层角度去分析研究PropertySourcesPlaceholderConfigurer的原理及实战注入机制

主要有一下xml文件占位符解析和Java的属性@Value的占位符解析配置这两种场景进行分析和实现解析,如下面两种案例。 ......

【Spring专题】「开发指南」夯实实战基础功底之解读logback-spring.xml文件的详解实现

logback的maven配置 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>2.0.3</version> </dependency> <dependency> <grou ......

【Java难点攻克】「NIO和内存映射性能提升系列」彻底透析NIO底层的内存映射机制原理与Direct Memory的关系

Java类库中的NIO包相对于IO包来说有一个新功能就是 【内存映射文件】,在业务层面的日常开发过程中并不是经常会使用,但是一旦在处理大文件时是比较理想的提高效率的手段,之前已经在基于API和开发实战角度介绍了相关的大文件读取以及NIO操作的实现,而本文主要想结合操作系统(OS)底层中相关方面的内容... ......
内存 难点 底层 NIO 原理

【JVM实战系列】「监控调优体系」实战开发arthas-spring-boot-starter监控你的微服务是否健康

相信如果经历了我的上一篇Arthas的文章[【JVM实战系列】「监控调优体系」针对于Alibaba-Arthas的安装入门及基础使用开发实战指南]之后,相信你对Arthas的功能和使用应该有了一定的理解了。那么我们就要进行下一步的探索功能。 ......

基于 Spring Cloud 的微服务脚手架

基于 Spring Cloud 的微服务脚手架 作者: Grey 原文地址: 博客园:基于 Spring Cloud 的微服务脚手架 CSDN:基于 Spring Cloud 的微服务脚手架 本文主要介绍了基于 Spring Cloud Finchley 和 Spring Boot 2.0.x 版本 ......
脚手架 Spring Cloud

Spring 6 源码编译和高效阅读源码技巧分享

Spring Boot 3 RELEASE版本于2022年11月24日正式发布,其核心框架的 Spring 也在2022年11月16日迎来了从 5.3.x到6.0.x重大版本升级,借着这个机会,更新下 Spring 6 源码编译以及分享下如何高效阅读源码的技巧。 ......
源码 技巧 Spring

微服务组件-----Spring Cloud Alibaba 注册中心Nacos的CP架构Raft协议分析

前言 本篇幅是继 注册中心Nacos源码分析 的下半部分。 意义 【1】虽说大部分我们采用注册中心的时候考虑的都是AP架构,为什么呢?因为性能相对于CP架构来说更高,需要等待的时间更少【相对于CP架构,采用的是二段提交,AP架构是直接落盘数据,然后进行数据扩散,来达到最终一致,所以客户端收到响应会更 ......
架构 组件 Alibaba Spring Cloud

SpringBoot源码学习2——SpringBoot x Mybatis 原理解析(如何整合,事务如何交由spring管理,mybatis如何进行数据库操作)

阅读本文需要spring源码知识,和springboot相关源码知识 对于springboot 整合mybatis,以及mybatis源码关系不密切的知识,本文将简单带过 系列文章目录和关于我 涉及到spring ioc原理,可移步学习:Spring源码学习笔记12——总结篇IOC,Bean的生命周 ......
SpringBoot 源码 原理 事务 Mybatis

8个Spring事务失效的场景,你碰到过几种?

前言 作为Java开发工程师,相信大家对Spring种事务的使用并不陌生。但是你可能只是停留在基础的使用层面上,在遇到一些比较特殊的场景,事务可能没有生效,直接在生产上暴露了,这可能就会导致比较严重的生产事故。今天,我们就简单来说下Spring事务的原理,然后总结一下spring事务失败的场景,并提 ......
场景 事务 Spring

Spring中11个最常用的扩展点,你知道几个?

前言 在使用spring的过程中,我们有没有发现它的扩展能力很强呢? 由于这个优势的存在,使得spring具有很强的包容性,所以很多第三方应用或者框架可以很容易的投入到spring的怀抱中。今天我们主要来学习Spring中很常用的11个扩展点,你用过几个呢? 1. 类型转换器 如果接口中接收参数的实 ......
常用 Spring

轻量级的架构决策记录机制

作者:倪新明 ADR是一种性价比非常高的架构决策文档化实践,团队引入和实践成本很低,却能为团队带来极大收益! 1 团队研发面临的问题 不论是在传统的IT行业,还是互联网行业,研发团队在架构决策层面或多或少的都会面临以下问题或挑战: •新成员加入团队,对系统现有的架构决策可能会盲目遵守,只知其然,不知 ......
轻量 轻量级 架构 机制

JS执行机制及ES6

一、JS执行机制 JS语言有个特点是单线程,即同一时间只能做一件事。单线程就意味着,所有的任务需要排队,前一个任务结束,才会执行后一个任务,可能造成页面渲染不连贯。 为了解决这个问题,利用多核CPU的计算能力,允许JS脚本创建多个线程,即同步和异步。 同步任务: 同步任务都在主线程上执行,形成一个执 ......
机制 ES6 ES

【机器学习】李宏毅——自注意力机制(Self-attention)

前面我们所讲的模型,输入都是一个向量,但有没有可能在某些场景中输入是多个向量,即一个向量集合,并且这些向量的数目并不是固定的呢? 这一类的场景包括文字识别、语音识别、图网络等等。 那么先来考虑输出的类型,如果对于输入是多个数目不定的向量,可以有以下这几种输出方式: 每个向量对应一个输出:输出的数目与 ......

Spring注解之@Import

@Import可以导入以下几种种类: 普通类 实现ImportSelector接口的类 实现DeferredImportSelector接口的类 实现ImportBeanDefinitionRegistrar接口的类 普通类 被导入的类会被容器注册成一个Bean,可以被依赖注入使用。【4.2 版本之 ......
注解 Spring Import

Spring之后置处理器

Spring的后置处理器是Spring对外开发的重要扩展点,允许我们接入Bean的实例化流程中,以达到动态注册BeanDefinition、动态修改BeanDefinition、动态修改Bean的作用。 BeanFactoryPostProcessor BeanFactory的后置处理器,在Bean ......
处理器 Spring