了解事务和锁事务:保持逻辑数据一致性与可恢复性,必不可少的利器。锁:多用户访问同一数据库资源时,对访问的先后次序权限管理的一种机制,没有他事务或许将会一塌糊涂,不能保证数据的安全正确读写。死锁:是数据库性能的重量级杀手之一,而死锁却是不同事务之间抢占数据资源造成的。不懂的听上去,挺神奇的,懂的感觉我...
分类:
数据库 时间:
2014-06-07 02:49:11
阅读次数:
290
Nhibernate并发控制【1】悲观并发控制
正在使用数据的操作,加上锁,使用完后解锁释放资源。使用场景:数据竞争激烈,锁的成本低于回滚事务的成本缺点:阻塞,可能死锁【2】乐观并发控制:
所谓乐观,就是乐观的认为其他人没有在用该资源,资源的使用者不加锁。 A 读取数据后,如果该数据被别...
分类:
系统相关 时间:
2014-05-30 05:44:34
阅读次数:
301
大家使用多线程无非是为了提高性能,但如果多线程使用不当,不但性能提升不明显,而且会使得资源消耗更大。下面列举一下可能会造成多线程性能问题的点:死锁过多串行化过多锁竞争切换上下文内存同步下面分别解析以上性能隐患死锁关于死锁,我们在学习操作系统的时候就知道它产生的原因和危害,这里就不从原理上去累述了,可...
分类:
编程语言 时间:
2014-05-30 05:23:55
阅读次数:
316
转载自:http://www.andylouse.net/html/itknowledge/2012/73.html一、什么是死锁死锁定义:多个进程在执行过程中,因争夺同类资源且资源分配不当而造成的一种互相等待的现象,若无外力作用,它们都将永远无法继续执行,这种状态称为死锁,这些处于等待状态的进程称...
分类:
其他好文 时间:
2014-05-30 01:36:04
阅读次数:
178
Oracle杀死死锁进程先查看哪些表被锁住了:select
b.owner,b.object_name,a.session_id,a.locked_modefrom v$locked_object
a,dba_objects bwhere b.object_id = a.object_id;OWNE...
分类:
数据库 时间:
2014-05-28 02:21:13
阅读次数:
399
不介绍背景,直接上例子首先我们创建这样的一张表,没有主键,添加下面的数据然后我们分别创建下面的连个连接查询查询1:SET TRANSACTION
ISOLATION LEVEL READ UNCOMMITTED--SERIALIZABLE--READ UNCOMMITTEDbegin tran pr...
分类:
其他好文 时间:
2014-05-26 19:18:04
阅读次数:
388
死锁和堵塞一直是性能测试执行中关注的重点。下面是我整理的监控sql
server数据库,在性能测试过程中是否出现死锁、堵塞的SQL语句,还算比较准备,留下来备用。--每秒死锁数量SELECT*
FROMsys.dm_os_performance_counters WHEREcounter_nameL...
分类:
数据库 时间:
2014-05-26 10:21:08
阅读次数:
265
一、进程管理进程管理包括进程控制,进程调度,进程同步与通信,死锁控制四个内容。(一)进程控制进程是操作系统中运行的基本单位,包括程序段,数据段和进程控制段。操作系统通过进程控制块(PCB)管理进程。每一个PCB唯一标示一个进程。它存储进程的PID,UID,当前状态等信息,以及进程执行某一时刻的寄存器...
分类:
其他好文 时间:
2014-05-25 22:16:57
阅读次数:
337
原子操作:一个或者多个指令的序列临界区:一段代码,在该代码中进程将访问该共享资源死锁:两个或者两个以上的进程因其中的每个进程都在等待其他进程做完事情而不能继续执行活锁:两个或者两个以上的进程为了响应其他进程中的变化而持续改变自己的状态但是不做有用的工作互斥:当一个进程在一个临界区访问共享资源时,其他...
分类:
其他好文 时间:
2014-05-25 18:47:34
阅读次数:
235
1 首先创建一个测试用的表: 复制代码 代码如下: CREATE TABLE Test ( TID
INT IDENTITY(1,1) )2 执行下面的SQL语句将此表锁住: 复制代码 代码如下: SELECT * FROM Test WITH
(TABLOCKX)3 通过下面的语句可以查看...
分类:
数据库 时间:
2014-05-25 02:31:01
阅读次数:
365