自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 RocketMQ事务消息使用与原理

所谓事务消息,其实是为了解决上下游写一致性,以及强依赖解耦,也即是完成当前操作的同时给下游发送指令,并且保证上下游要么同时成功或者同时失败,并且考虑上游的性能和RT问题做出的强调用解耦妥协。

2022-09-06 11:28:29 1677 1

原创 Mybatis原理分析

    到目前位置在国内使用最广泛和最流行的持久层框架非Mybatis莫属,但是从最近一次jvm生态报告中,mybatis在java体系的使用率并不高:    可以清晰地看到mybatis不占上风,作为开发人员的常识,貌似国内java开发人员占比比较高,但是其实并不然,我们通过另一张统计报告图来看一下java开发人员在全球范围内的占比:    很明显北美的活跃度最高,老外更喜欢

2022-01-14 15:32:37 395

原创 从取药和驾考重新看排队系统

    最近经历了两件事,去医院药房取药和富阳驾照考试,出于职业习惯,引起了我对队列和排队系统的重新思考。一、取药    去药房取药的流程大致是:拿处方单去取号机器扫码取号拿着取药号等待看到窗口LED屏显示自己的名字后,在窗口排队排到自己被叫号后去窗口取药二、驾照考试    科二考试流程如下:候考大厅签到候考大厅等待LED屏考试区看到自己的名字后进入考场考

2022-01-14 10:15:34 268

原创 白话Https原理

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)的应用层传输协议。

2022-01-06 11:34:15 1450

原创 Springboot内置容器原理

springboot强大的地方就是,相比于传统spring架构,省去了很多繁杂的配置,其中一个就是springboot支持了内置容器,启动的时候框架层面帮我们初始化和启动容器,我们更多的关心代码和业务逻辑实现即可,那么它是如何支持内置容器的,以及内置容器是如何初始化和启动的,本篇文章将展开详细分析。

2022-01-05 10:37:50 2418

原创 Spring事务原理详解

spring事务开启和使用比较简单,需要有数据源和事务管理器,然后在启动门面类上开启事务,在需要使用事务的地方添加注解就可以了,我们简单做一下回顾。

2021-12-31 18:19:32 5281 3

原创 一文看懂Openfeign服务调用原理

OpenFeign是Spring Cloud 在Feign的基础上支持了Spring MVC的注解,如@RequesMapping等等。 OpenFeign的@FeignClient可以解析SpringMVC的@RequestMapping注解下的接口,并通过动态代理的方式产生实现类,实现类中做负载均衡并调用其他服务。

2021-12-29 14:57:45 1165

原创 ConfigurationClassPostProcessor原理详解

从spring官方介绍中,我们可以了解到ConfigurationClassPostProcessor是一个BeanFactoryPostProcessor,用于处理一些配置信息和注解扫描,并且该处理器执行的时候有优先级顺序,优先执行PriorityOrdered,然后执行Ordered,最后执行默认没有优先级的处理器。

2021-12-28 16:50:36 1332 1

原创 @ComponentScan原理分析

@ComponentScan的官方介绍,大致意思就是扫描注册bean的一个注解,会扫描对应路径下被@Component标注的类,和xml方式的<context:component-scan>作用相似,常用的方式是basePackages方式。

2021-12-28 16:41:28 1479

原创 Netty时间轮

时间轮是一个高性能,低消耗的数据结构,它适合用非准实时,延迟的短平快任务,例如心跳检测。在netty和kafka中都有使用。

2021-12-23 15:07:20 5059 1

原创 基于ComponentScan实现接口分环境和分机房注册

有这样一个场景,对于同一个业务领域,面向C端用户和B端商家或者管理人员,而C端和B端使用的接口能力不同,举个例子,对于电商场景的FAQ,由商家或者管理人员维护更新,而C端用户只有查看的诉求和能力,并且C端用户和管理人员不在同样的区域,用户可能在欧洲,商家和管理人员在国内,那么如果同一份代码在两个区域部署,当然会解决网络延时问题,但是也带来了资源浪费问题,对于部署在欧洲针对用户开放的服务,管理侧相关接口永远不可能被调用到,对于部署在国内的面向商家和管理侧的服务,C端接口也是基本不可能被调用到...

2021-12-22 18:13:50 358

原创 spring cache原理解析

从Spring3.1版本开始,Spring框架就支持显式地将缓存添加到现有的Spring应用程序中。与事务支持类似,缓存抽象允许一致地使用各种缓存解决方案,而对代码的侵入最小。

2021-12-22 17:54:06 1892

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除