事务相关内容

java - for循环中控制事务

问 题 Java项目开发过程中,有for循环,逐条处理10万条数据。由于逐条处理数据的时候,要更新6~7张表,希望,每次在执行for循环的时候,都对数据库做一次提交。 1.我的处理方法 是,将for循环中的方法提出来,然后,使用spring的手动开启事务的方法,在提取出来的方法上,配置了@Transactional(propagation = Propagation.REQUIRES_NE ..
发布时间:2017-09-06 11:27:46 Java开发

mysql - InnoDB中的锁

问 题 表如下: Create Table: CREATE TABLE `t` ( `a` int(11) DEFAULT NULL, KEY `idx_a` (`a`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 数据如下: +------+ | a | +------+ | 11 | | 12 | | 13 | | ..
发布时间:2017-09-06 09:29:14 数据库

事务一致性与原子性的区别

问 题 对于事务一致性的理解不是很到位。 网上大体的回答是从一个状态到另一个状态,举例也都是张三给李四转100块钱,那么保证张三和李四的总和不变就是一致性。初步判断这个举例有些牵强,例如,有一种业务逻辑,张三需要从账户中减掉100,而李四只会从账户中增加60,只要保证这两个同时成功,也叫一致性吧。 还有文章说保证开始状态和终态中的约束之类的一致,就是一致性。 总是感觉这两种解释都有些牵 ..
发布时间:2017-09-06 09:00:06 其他开发

php - 12306抢票并发怎么处理?

问 题 公司有个抢单的业务,要网站实现。 我自己设计的解决方案想问问大家是否可行,如果不可行有更成熟的方案吗? 我的方案: 请求进来之后首先判断当前时间是否在抢单时间内,如果在就修改缓存中的抢单人id,表明此订单被抢单人抢到,然后修改抢单允许时间为false。 解决方案 为什么要扯上12306呢?即使是12306的抢票目前来看也有很大的问题。 你的方案如果在并发 ..
发布时间:2017-09-06 06:41:47 PHP

spring-mvc - SpringMVC当中的 @Transactional(readOnly = true) 意义?

问 题 如题 SpringMVC当中的 @Transactional(readOnly = true) 意义? 有人回答说是 : 有写数据库的操作会报异常,这就是作用 难道就是为了控制写代码的人规范,防止他们在这种方法里面写修改数据库的代码? 另外: 如果一个方法里面跟数据库操作的部分都只是select的话,那为什么还要加@Transactional注解呢 ..
发布时间:2017-09-06 04:44:52 其他开发

线程池 - spring的service中新建一个线程的事务问题

问 题 想用线程池的方式来处理业务,在service中调用线程池然后处理业务,线程方法里引用了其他的service,不知道整体的事务spring会不会控制,还是只能控制引用的各个service。线程池是Executors建的,应该没有被spring管理 解决方案 线程池最好配置在.xml中。事务是用默认属性还是根据业务不同使用的事务不同? ..
发布时间:2017-09-06 04:03:48 其他开发

事务 - Spring Transactional ReadOnly 和 不加Transactional的区别

问 题 在网络上搜了下,答案如下两个。 说下我的理解,其实不管你写不写transaction,事务是肯定有的。只是默认单条sql一个事务,如果我们在Service层的方法上加Transaction注解,那么事务的范围就会扩大,包含在service方法执行的所有sql。Mysql默认的隔离级别是可以防止不可重复读的,所以,加上Transactional,里面如果涉及多次查询一条记录,中间即使 ..
发布时间:2017-09-06 02:06:23 其他开发

java编程思想读书笔记 - Java编程思想习题请教: 使用动态代理来编写一个系统以实现事务?

大家好,小弟最近在学习《Java编程思想》第四版,学习到第十四章《类型信息》中动态代理的时候,在习题23后遇到一个问题,使用动态编写一个系统以实现事务,不知道该如何解决,特来请教大家,题目如下: 使用动态代理来编写一个系统以实现事务,其中,代理在被代理的调用执行成功(不抛出任何异常)执行提交,而在执行失败时执行回滚。你的提交和回滚都针对一个外部的文本文件,该文件不在Java异常的控制范围之内 ..
发布时间:2017-09-06 01:50:11 Java开发

php - 两条sql操作不同表,如何保证两次操作都达到预期效果

问 题 有这样一个需求 当请求我的一个php接口程序,脚本会进行一个insert a表,然后update b 表数据的操作。 当一些特殊的原因(数据量大,并发请求过多), 会出现 insert完成但 update失败的情况,请问各位设计这类程序的时候是怎样做的? mysql事务可以完成这个操作,但是事务回滚的话 a表 b表都没有进行更改。(这样不符合需求),谢谢。 解决方案 ..
发布时间:2017-09-06 01:41:59 PHP

php - 数据库的哪些操作需要放到应用层来写?

问 题 我现在是写php为主。 这几天看了有关mysql中事务,锁之类的内容。 我看到了有一些php框架提供了悲观锁,乐观锁之类的api.但是我又看到一些人说,在应用层无需考虑锁这方面的东西,因为数据库会帮我们做好。 我想问的是: 1.数据库的哪些操作需要放到应用层来做?哪些是数据库底层自己维护的或者说应该放到存储过程的? 2.增删改查,事务提交回滚,还有哪些? 3.现在的php ..
发布时间:2017-09-06 01:40:24 PHP