自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 springioc和springmvc ioc初始化过程

【spring ioc容器】1.程序启动时,web服务器读取web.xml配置文件,并实例化listener节点;2.根据contextConfigLoaction,读取spring配置文件的路径,将配置的bean信息加载到webapplicationcontext中,将WebApplicationContext.ROOTWEBAPPLICATIONCONTEXTATTRIBUTE作为ke...

2019-09-04 20:41:47 313

原创 springmvc

新建maven项目;创建spring配置文件、servlet配置文件;在pom文件添加springmvc相关的依赖。【springmvc请求的bean的作用域】controller中的bean实例是单例,当请求访问其中的非静态变量时,多个请求之间可以共享访问此变量值;单例访问并不安全,可以在访问controller时候,加上@Scope注解,改变作用域;之所以使...

2019-09-04 17:07:15 94

原创 zookeeper- zab协议

Zab协议是为分布式协调服务Zookeeper专门设计的一种支持崩溃恢复的原子广播协议在Zookeeper中主要依赖Zab协议来实现数据一致性,基于该协议,zk实现了一种主备模型(即Leader和Follower模型)的系统架构来保证集群中各个副本之间数据的一致性。如果是写请求,那么节点就会向 Leader 提交事务,Leader 接收到事务提交,会广播该事务,只要超过半数节点...

2019-08-23 00:04:26 99

原创 zookeeper

概述分布式应用程序协调服务系统,是大数据生态圈的重要组件。分布式开源系统如Hadoop,Hbase,Kafka等依赖zookeeper提供一致协调服务。 分布式应用程序可以基于Zookeeper实现诸如数据发布/订阅、负载均衡、命名服务、分布式协调/通知、集群管理、Master选举、分布式锁和分布式队列等功能。 zk集群部署模式:单机模式、伪集群模式、集群模式,集群规则至少2N+1台服务器...

2019-08-22 23:32:19 98

原创 Java多线程并发(五)- Condition接口

Condition和Locksynchronized和wait/nofify/notifyAll,是定义在Object上的一组监视器方法,配合可以实现等待/通知模式。使用condition之前,需要获取到与condition对象关联的锁。Lock lock = new ReentrantLock();Condition condition = lock.newCondition()...

2019-08-21 17:04:24 100

原创 Java多线程并发(四)-LockSupport工具

LockSupport工具定义了一组公共静态方法,提供了基本的线程阻塞和唤醒功能,它是一个构件同步组件的基础工具。以park开头的方法用来阻塞当前线程,unpark方法用来唤醒一个被阻塞的线程。park(Objecgt)、parkNanos(Object,long)、parkUntil(Object,long),jdk6中补充的方法,参数Object,是用来标识当前线程在等待的对象...

2019-08-21 12:19:33 135

原创 Java多线程并发(三)- 读写锁

读写锁:通过分离读锁和写锁,使它能提供比排它锁更好的并发性和吞吐量; jdk5之后提供的读写锁,相比于等待通知机制的实现方式,编程方式更简单;目录ReentrantReadWriteLock实现分析ReentrantReadWriteLock特性 说明 公平性选择 支持非公平和公平的锁获取方式,吞吐量非公平优于公平 重进入 支持重进入:读线程获取读锁之...

2019-08-21 12:08:25 276

原创 Java多线程并发(二)- 重入锁

重入锁ReentrantLock,支持重进入的锁,表示一个线程对资源的重复加锁。按照锁的请求顺序和获取顺序,分为公平锁和非公平锁。 任意线程在获取到锁之后能够再次获取该锁而不会被锁阻塞。实现重进入1.线程再次获取锁:锁需要识别获取锁的线程是否为当前占据锁的线程,如果是,则再次获取成功。2.锁的释放:锁的获取同步状态变量需要自增,该变量表示锁被重复获取的次数;释放时,该变量自减,当减为0...

2019-08-21 10:33:52 149

原创 Java多线程并发(一)- 同步队列器 AQS

同步队列器 AQS(AbstractQueuedSynchronizer)是用来构建锁或自定义同步组件的基础框架,它是用一个volatile修饰的int成员变量表示同步状态,结合内置的队列完成线程获取资源的排队工作。 使用方式是继承同步队列器,主要使用更改同步状态的3个方法:getState(),setState(int newState),compareAndSetState 自定义同步组件...

2019-08-20 17:11:25 164

原创 软件设计模式

软件设计模式

2018-08-08 23:25:01 83

空空如也

空空如也

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

TA关注的人

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