- 博客(12)
- 问答 (26)
- 收藏
- 关注
原创 SpringBoot中的Transaction研究(二)PropagationBehavior
文章目录从外在要求的视角从相应策略上看从当前状态来看required、required_new、nestedsupportednot_supportedmandatorynever从外在要求的视角Propagation可以分为两大类,一类对于当前transaction有要求,一类没有要求,其中前者又可以分为要求有和要求无两个小类,第一个小类就是MANDATORY,而第二个小类就是NEVER.其中无要求又可以分为2*2=4种情况,其中有->无,无->有这种情况太奇怪就没有了从相应策略上看
2020-10-28 17:25:30 494
原创 On TransactionIsolation(6)RepeatableRead
书接上回,提到了repeatable read到底是怎样的情况,从上次的例子看出来有些即使没有没读取的数据,在repeatable read的情况也会读取历史数据,这样做有个好处就是如果先前读的数据和后来读的数据有着某种联系,那么repeatable read可以保证多次读取的数据是内在一致的。对于同一个表里,多行数据会读取历史信息(无论是否被读取过),那么不同表的数据呢?更进一步,如果DDL语句会体现出来么?测试代码如下package com.qbit;import java.sql.Con
2020-10-28 16:06:22 743
原创 On TransactionIsolation(5)different transaction
目录结论测试代码read_uncommitedread_commitedrepeatable_readserializable根据代码来看,isolation是针对单个连接而言的,如果对于读和写使用不同的隔离级别会是什么效果呢?结论先说结论,如下 write read READ_UNCOMMITTED READ_COMMITTED REPEATABLE_READ SERIALIZABLE READ_UNCOMMITTE..
2020-10-28 14:09:03 163
原创 On TransactionIsolation(4)MsSql
使用下面的代码连接数据库private static Connection connection() { try { Class.forName(com.microsoft.sqlserver.jdbc.SQLServerDriver.class.getName()); Connection out= DriverManager.getConnection("jdbc:sqlserver://172.23.47.6:1433","sa",
2020-10-27 11:56:57 145 1
原创 On TransactionIsolation(3)Postgresql
postgresql的测试需要将connection方法改成以下private static Connection connection() { try { Connection out=DriverManager.getConnection("jdbc:postgresql://172.23.47.6:5432/postgres","postgres","mima"); out.setTransactionIsolation(Conne
2020-10-26 17:32:26 324
原创 On TransactionIsolation(2)Oracle
Oracle的连接需要将connection改为如下情况private static Connection connection() { try { Class.forName(oracle.jdbc.OracleDriver.class.getName()); Connection out= DriverManager.getConnection("jdbc:oracle:thin:@172.23.47.6:1521:ORCLCDB",
2020-10-26 17:18:19 313
原创 On TransactionIsolation(1)MySql
参见https://blog.csdn.net/kamputer/article/details/109292200将connection方法修改如下,主要是讲隔离级别设置为Connection.TRANSACTION_READ_UNCOMMITTEDprivate static Connection connection() { try { Class.forName(com.mysql.cj.jdbc.Driver.class.getName());
2020-10-26 16:43:50 150
原创 On TransactionIsolation(0)
写了一段代码,通过两个connection来连接数据库,一个写,一个读。每次写线程写完都通知读线程来读取数据。package com.qbit;import java.sql.*;import java.util.concurrent.Callable;import java.util.concurrent.Executors;import java.util.concurrent.atomic.AtomicBoolean;import java.util.concurrent.locks
2020-10-26 16:19:46 234
原创 从Paxos到Zookeeper(二)Two-Phase Commit & Three-Phase Commit
两阶段提交简单来看就是coordinator向participant发出了两次命令,第一次是prepare,第二次是commit或者rollback。其中第一次的prepare相当于一次预演,在确保大家都能成功的情况下才会提交,从而避免了大家不一致的情况。为了让预演时成功就能在第二阶段成功,这要求participant在prepare后不能再修改。三阶段提交时coordinator向participant发出了三次命令,第一次是canCommit,第二次是PreCommit或者abort,第三个是doC
2020-10-23 11:50:39 228
原创 develop on Ubuntu
down load java from oracelhttp://download.oracle.com/otn-pub/java/jdk/10.0.2+13/19aef61b38124481863b1413dce1855f/jdk-10.0.2_linux-x64_bin.tar.gz?AuthParam=1536887111_a96ac9b1463a1209d52bd2614c83d634...
2020-10-21 10:42:19 340
原创 SQL优化经验
文章目录原因or结果索引单列索引&联合索引索引列索引类型综述错误示例函数无效冗余表内冗余冗余列函数列冗余表宽表窄表读写分离错误写多读少用于写入的读分区缓存下面的❤未必准确,是为了参考。重要的是提供各种方法,需要根据具体情况来选择原因or结果当我们收到系统的一个功能卡的反馈的问题时需要搞清楚的是这个功能卡是自身造成的还是收到了其他的影响造成的。我们可以把这个操作在用于性能优化的环境复现下看是否还卡(注意数据尽量和生产保持一致),如果发现并不卡则可能是其他原因造成,问题的症结不在这,另外下面的情况
2020-10-21 10:23:56 507
原创 一个Sql重写优化器(三)Impl
文章目录Simple implJoin reducedSimple impl这种情况仅仅将DSL转换为一个Sql然后执行,使用了NIO的特性,但是对于Sql本身未做优化。import com.google.common.base.*;import com.google.common.collect.*;import io.r2dbc.spi.Row;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang3.StringUt
2020-10-20 16:56:18 467
空空如也
virtualbox里的ubuntu无法远程(centos却可以)
2022-05-09
ETL中如何进行跨库join
2020-11-09
java中的虚假唤醒的解决
2020-10-26
如何使用CLion阅读jvm源代码
2020-08-03
请教读linux代码中如何能够跳转
2020-07-21
为什么IO中间会有interrupt
2020-07-20
cpp中const函数的意义何在?
2020-07-20
关于PAXOS的一个极端例子,貌似无法得到一致性
2020-05-22
除了postgresql外还有什么数据库支持继承么?
2020-05-07
go的运行错误如何返回给调用者
2019-12-23
有没有什么方法连接两个RabbitMQ
2019-11-12
Flink如何将kafka里的消息写入到对应的topic
2019-10-30
有没有什么方法将HTTP请求转换为AMQP/JMS消息
2019-10-30
svn牵代码报“由于目标计算机积极拒绝,无法连接”
2018-11-15
如何拦截Mybatis的所有update方法,insert方法
2017-11-21
SpringBoot的Autowired如何能让被注入的属性感知到被注入的对象
2017-11-21
Spring注入时如何得知当前Bean注入给哪个对象
2017-11-11
Nginx反向代理如何将不同来源的请求代理到不同服务?
2017-11-08
用swing编写gui程序为什么要自定义子类
2017-10-20
请教一个xsd对于一个可能为空的节点的表示
2015-12-15
Visual Studio2015 mfc中如何设置被开发程序的快捷键
2015-10-04
同样的web项目myeclipse2015无法启动
2015-05-04
log4j2中如何设置日志文件的路径
2014-09-09
请问oracle中如何得到一个日期是周几
2014-04-29
TA创建的收藏夹 TA关注的收藏夹
TA关注的人