摘要: 一、环境信息: 1、项目依赖: 2、配置文件: 二、服务登记、订阅: 阅读全文
posted @ 2019-03-10 21:34 吴wuwu 阅读(561) 评论(1) 推荐(0) 编辑
摘要: 一、IOC(Inversion of Control)容器:就是具有依赖注入(Dependncy Injection)功能的容器,是可以创建对象的容器,IOC容器负责实例化、定位、配置应用程序中的对象及建立这些对象间的依赖。通常new一个实例,控制权由程序员控制,而"控制反转"是指new实例工作不由 阅读全文
posted @ 2019-03-04 16:58 吴wuwu 阅读(454) 评论(0) 推荐(0) 编辑
摘要: 一、锁: 表锁:MyISAM、Memory 存储引擎;行锁:InnoDB 存储引擎;页锁:BDB 存储引擎;默认情况下表锁和行锁都是自动获得的,不需要额外的命令;但是有时候用户需要明确的进行行锁或者进行事务的控制,以便确保整个事务的完整性,这样就需要用到事务控制和锁定语句来完成。 1、lock / 阅读全文
posted @ 2019-03-03 17:15 吴wuwu 阅读(234) 评论(0) 推荐(0) 编辑
摘要: MySQL 的存储引擎种类很多,有MyISAM、InnoDB、Archive、Blackhole、CSV、Memory、Merge、NDB等等,以下介绍常用的存储引擎: 一、MyISAM: 在MySQL 5.1 及之前的版本,MyISAM 是默认的存储引擎。MyISAM 提供了大量的特性,包括全文索 阅读全文
posted @ 2019-03-03 13:42 吴wuwu 阅读(1194) 评论(0) 推荐(0) 编辑
摘要: 在创建一个n列的索引时,需要遵循“最左前缀”原则。 创建表:create table abc(a varchar(32) not null, b varchar(32), c date, d varchar(32) ); 创建普通索引:create index in_abc_acb on abc(a 阅读全文
posted @ 2019-03-02 21:44 吴wuwu 阅读(748) 评论(0) 推荐(0) 编辑
摘要: 一、索引的本质: 索引(Index) 是帮助MySQL高效获取数据的数据结构。索引可以包含一个或多个列的值。如果索引含多个列,那么列的顺序也十分重要,因为MySQL只能高效地使用索引的最左前缀列。 二、索引的数据结构: 1、B - Tree: 1.1、根节点至少包括两个孩子; 1.2、树中每个节点最 阅读全文
posted @ 2019-03-02 18:57 吴wuwu 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 一、使用线程池的优点: 1、线程重用,避免线程创建的开销 2、任务过多时,通过队列避免创建过多线程,减少系统资源消耗和竞争,确保任务有序完成 二、如何使用线程池: 1、ThreadPoolExecutor 构造方法: 2、任务拒绝策略:如果队列有界,且maximumPoolSize有限,则当队列排满 阅读全文
posted @ 2019-02-27 18:09 吴wuwu 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 一、锁接口 Lock,ReadWriteLock: 1、Lock,实现类有ReentractLock、WriteLock、ReadLock; 2、ReadWriteLock,主要实现类是ReentrantReadWriteLock,有两个方法 writeLock()、readLock() ,返回值是 阅读全文
posted @ 2019-02-27 15:06 吴wuwu 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 一、CAS (Compare And Swap): CAS(Compare And Swap),即比较并交换 CAS(V,E,N)。是解决多线程并行情况下使用锁造成性能损耗的一种机制,CAS操作包含三个操作数——要更新的变量(V)、预期原值(E)和新值(N)。核心算法是如果V 值等于E 值,则将V 阅读全文
posted @ 2019-02-26 14:38 吴wuwu 阅读(2510) 评论(0) 推荐(0) 编辑
摘要: 一、生产者、消费者协作机制: 生产者线程和消费者线程通过共享队列进行协作,生产者将数据或任务放到队列上,而消费者从列队上取数据或任务,如果队列长度有限,在队列满的时候,生产者等待,而在队列为空的时候,消费者等待。 二、同步协作机制: 在一些程序,尤其是模拟仿真程序中,要求多个线程同时开始。 三、主从 阅读全文
posted @ 2019-02-25 17:27 吴wuwu 阅读(436) 评论(0) 推荐(0) 编辑