自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(17)
  • 收藏
  • 关注

原创 第一章、创建和销毁对象

类中提供一个公有的静态工厂方法(),只返回类的实例。如来自 Boolean 的简单示例1、可以拥有名称当一个类需要多个带有相同方法签名的构造器时,就用静态工厂方法代替构造器,并且仔细选择名称不可变类可以使用预先构建好的实例,进行重复利用,避免创建不必要的重复对象。如 方法,不创建对象,类似享元模式。如果程序要求创建相同对象,并且创建对象的代价很高,这种方法可以极大的提升性能。???todo如 没有公有的构造器,只有静态工厂方法,返回两个子类之一的实例,具体取决于底层枚举类型的大小这两个实现类对于客

2022-06-05 23:06:46 604

原创 HotSpotIntrinsicCandidate注解

Java9新特性

2022-06-04 21:59:33 1104

原创 2、Reactor核心

Flux,an Asynchronous Sequence of 0-N ItemsFlux 是通用反应类型. 请注意,所有事件,包括终止事件,都是可选择的。如没有onNext 事件,但是有一个 onComplete 事件 表示一个有限空序列,如果移除 onComplete 事件,表示一个无限空序列同样,无限序列不一定是空的。例如,Flux.interval(Duration) 产生一个Flux<Long>,无限的并从时钟发出定期滴答声。Monoan Asynchronous 0-

2022-05-29 23:57:00 371 1

原创 1、响应式编程基础概念

为了实现更高的资源利用率,使用异步非阻塞交互模型背压是指处理模块之间工作负载的一种机制,保证不会压垮下一个模块观察者模式(Observer Pattern)定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。examplepublic interface Observer { void update(String event);}class Subject { private final List<Observ

2022-05-28 22:38:23 199

原创 如何决定Spring中Bean的加载顺序

resources目录下创建META-INF,在META-INF目录下创建spring.factories这个文件org.springframework.boot.autoconfigure.EnableAutoConfiguration=\com.spring.java.webflux.DemoConfiguration举个荔枝使用reactor进行web开发,里面有个webHandler有默认的bean,如果想要加载自己的Bean就需要配置上面的Configuration...

2022-05-25 21:04:03 499

原创 WebFilter 和 WebFilterChain

/** * 一个拦截风格的约定, Web 请求链式过程中, 用于实现横向剪切点应用系统必要的要求,比如安全,耗时等 */public interface WebFilter { /** * Process the Web request and (optionally) delegate to the next * {@code WebFilter} through the given {@link WebFilterChain}. * @param exchange the cu.

2022-05-25 20:56:26 651

原创 webHandler

webHandler默认webHandler实现是DispatcherHandler@Beanpublic DispatcherHandler webHandler() { return new DispatcherHandler();}

2022-05-25 20:56:11 636

原创 第十章、DruidDataSource.connections是按照什么排序的

com.alibaba.druid.pool.DruidDataSource#connections

2022-05-21 00:29:57 227

原创 第九章、销毁线程的 shrink 方法

com.alibaba.druid.pool.DruidDataSource#shrink(boolean, boolean)

2022-05-19 23:42:46 170

原创 第八章、removeAbandoned 连接池泄露检测

com.alibaba.druid.pool.DruidDataSource#removeAbandoned

2022-05-19 00:07:54 1044

原创 第七章、testWhileIdle、testOnBorrow、testOnReturn 在探活的应用

很有用的三个参数testwhileie,这个如果空闲时间大于一个参数,就执行validationsql检测连接是否有效,另外两个分别是借出和归还时对交接进行检验我们聊聊为什么会有量的探活语句出现。探活机制实际上是数据源连接池通的种检测机制,可以检测连接池内的连接对象是否真的可。拿Druid连接池举例,探活SQL是通过数据源的 validationQuery 属性配置的。与之相关的配置属性还有:testOnBorrow testWhileIdle testOnReturn timeBetweenEvict

2022-05-18 00:22:03 771

原创 第六章、StatementProxyImpl、PreparedStatementProxyImpl、ConnectionProxyImpl逻辑梳理

DruidConnectionHolder 的个数就是连接池中资源的总个数,DruidConnectionHolder中最重要的两个参数DruidAbstractDataSource dataSource = DruidDataSource 和 Connection conn = ConnectionProxyImpl , 理论上来说,DruidConnectionHolder 公用同一个DruidDataSource,各自包含一个 ConnectionProxyImpl#mermaid-sv

2022-05-14 23:56:49 528

原创 第五章、DruidDataSource的init方法中三只线程

目录前言一、createAndLogThread二、createAndStartCreatorThread三、createAndStartDestroyThread总结前言在执行DruidDataSource的init方法中,会开启三个线程去做某些事情, 这篇文章主要分析一下,这三个方法CountDownLatch initedLatch = new CountDownLatch(2);createAndLogThread();createAndStartCreatorThread(); //

2022-05-14 16:05:37 501

原创 第四章、DruidPooledConnection中的close方法

文章目录前言一、close方法二、DruidPooledConnection#recycle三、DruidDataSource#recycle四、DruidDataSource#putLast总结前言Connection使用完成之后,执行关闭方法后,重新资源池中,资源利用一、close方法 public void close() throws SQLException { if (this.disable) { return; }

2022-05-14 00:52:16 1429

原创 第三章、获取DruidPooledConnection真正的方法

DruidDataSource中的getConnectionInternal 方法private DruidPooledConnection getConnectionInternal(long maxWait) throws SQLException { if (closed) { connectErrorCountUpdater.incrementAndGet(this); throw new DataSourceClosedExcept

2022-05-13 00:24:58 680

原创 第二章、DruidDataSource 和 DruidAbstractDataSource

文章目录一、DruidAbstractDataSource二、DruidDataSource总结一、DruidAbstractDataSource protected ReentrantLock lock; protected Condition notEmpty; protected Condition

2022-05-11 22:33:09 900

原创 第一章、创建数据库连接池工厂

druid数据库连接池工厂类

2022-05-10 08:01:53 754

空空如也

空空如也

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

TA关注的人

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