1.在单例设计模式中,会出现多线程的同步问题。主要表现在,当使用的是懒汉式单例设计模式来创建对象的时候,若有多个进程同时在执行,则有可能会创建了多个对象,但这个不是单例设计模式应该出现的问题。所以需要使用锁机制来解决。需要注意的是,饿汉式不会出现这个问题。具体代码如下。 姑且也许可以这么认为,在有判 ...
分类:
编程语言 时间:
2017-04-05 00:46:04
阅读次数:
141
博主QQ:819594300博客地址:http://zpf666.blog.51cto.com/有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持!一、分表为什么要分表?我们的数据库数据越来越大,随之而来的是单个表中数据太多。以至于查询书读变慢,而且由于表的锁机制导致应用操作也搜到严重影响..
分类:
数据库 时间:
2017-03-31 22:29:11
阅读次数:
278
数据库越来越大,单个表中数据过多,查询读写,还有锁机制,会导致严重的数据库性能影响.表锁,行锁,都是为了保证数据的完整性,分表分表是把一个大表,分成若干个独立储存空间的表,每个表都对应MYD数据文件,MYI索引文件,FRM表结构文件,这些表可以分布在一个存储设备,也可以分在不同存..
分类:
数据库 时间:
2017-03-31 13:57:00
阅读次数:
196
乐观离线锁最常见的实现方式是通过在UPDATE/DELETE语句中增加版本号来实现锁机制。 之所以叫离线锁是因为这种锁不是长时间的锁,而且一个业务事务中可能同时包含了几个系统事务。而乐观是相对悲观而言的,表示预计冲突不总是发生,以其得到最大的性能。 可能对业务事务,系统事务的概念大家有些陌生。按我的 ...
分类:
其他好文 时间:
2017-03-31 12:20:10
阅读次数:
359
一、行锁概念及特点 1.概念:给单独的一行记录加锁,主要应用于innodb表存储引擎 2.特点:在innodb存储引擎中应用比较多,支持事务、开销大、加锁慢;会出现死锁;锁的粒度小,并发情况下,产生锁等待的概率比较低,所以支持 的并发数比较高。 二、数据库事务 1.概念:事务是一系列操作组成的工作单 ...
分类:
数据库 时间:
2017-03-28 00:01:02
阅读次数:
258
一、MySQL存储引擎 二、存储引擎如何选择 是否支持事务 检索和添加速度 锁机制 缓存 是否支持全文索引 是否支持外键 三、MyISAM和InnoDB对比 四、什么时候使用MyISAM和InnoDB MyISAM:读事务要求不高,以查询和插入为主,例如各种统计表。 InnoDB:对事务要求高,保存 ...
分类:
数据库 时间:
2017-03-27 00:47:08
阅读次数:
278
Lock接口:多线程在JDK1.5版本升级时,推出一个接口Lock接口。解决线程安全问题使用同步的形式,(同步代码块,要么同步函数)其实最终使用的都是锁机制。 到了后期版本,直接将锁封装成了对象。线程进入同步就是具备了锁,执行完,离开同步,就是释放了锁。在后期对锁的分析过程中,发现,获取锁,或者释放 ...
分类:
编程语言 时间:
2017-03-26 18:29:44
阅读次数:
152
一:什么是线程安全 线程安全 就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。 线程不安全 就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据 如果你的代码 ...
分类:
编程语言 时间:
2017-03-26 17:20:27
阅读次数:
239
1 前言 数据库大并发操作要考虑死锁和锁的性能问题。看到网上大多语焉不详(尤其更新锁),所以这里做个简明解释,为下面描述方便,这里用T1代表一个数据库执行请求,T2代表另一个请求,也可以理解为T1为一个线程,T2 为另一个线程。T3,T4以此类推。下面以SQL Server(2005)为例。 1 前 ...
分类:
数据库 时间:
2017-03-25 21:43:20
阅读次数:
206
悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。 乐观锁(Op ...
分类:
其他好文 时间:
2017-03-25 00:48:51
阅读次数:
146