摘要: 1、无记录插入,有则update的sql语句新字句 insert into test1 values(1,37) ON CONFLICT (a) DO UPDATE set b= EXCLUDED.b; http://www.postgresql.org/docs/9.5/static/sql-in 阅读全文
posted @ 2021-01-02 15:04 渴望蓝天的白鸽 阅读(395) 评论(0) 推荐(0)
摘要: postgresql 并发update下导致的死锁问题 一、死锁问题背景 在收据批量打印时,由于采用异步并发触发打印,同时触发打印(九千多数据 每隔50ms触发一次),导致了并发执行引起在接口更新打印次数时postgresql发生死锁问题, 具体报错如下: 1 ### The error occur 阅读全文
posted @ 2021-01-02 14:44 渴望蓝天的白鸽 阅读(2518) 评论(0) 推荐(0)
摘要: 1、事务的传播行为 1.1、传播行为简介 1.2、事务的测试代码(这里只测试了两种) 2、事务的隔离级别 2.1、数据库事务并发问题 2.2、事务的隔离级别 2.3、测试代码(这里只测试了两种) 1、事务的传播行为 1.1、传播行为简介 当事务方法被另一个事务方法调用时,必须指定事务应该如何传播。例 阅读全文
posted @ 2021-01-02 13:51 渴望蓝天的白鸽 阅读(118) 评论(0) 推荐(0)
摘要: Java多线程并发编程/锁的理解 一.前言 最近项目遇到多线程并发的情景(并发抢单&恢复库存并行),代码在正常情况下运行没有什么问题,在高并发压测下会出现:库存超发/总库存与sku库存对不上等各种问题。 在运用了 限流/加锁等方案后,问题得到解决。 限流方案见本人另一篇博客:Guava-RateLi 阅读全文
posted @ 2021-01-02 13:30 渴望蓝天的白鸽 阅读(203) 评论(0) 推荐(0)
摘要: 原文地址: https://www.cnblogs.com/pejsidney/p/9001875.html 阅读全文
posted @ 2020-12-30 17:42 渴望蓝天的白鸽 阅读(153) 评论(0) 推荐(0)
摘要: SpringBoot线程中的配置说明和流程 关于线程和线程池的学习,我们可以从以下几个方面入手: 第一,什么是线程,线程和进程的区别是什么 第二,线程中的基本概念,线程的生命周期 第三,单线程和多线程 第四,线程池的原理解析 第五,常见的几种线程池的特点以及各自的应用场景 一、什么是线程 线程,程序 阅读全文
posted @ 2020-12-30 17:39 渴望蓝天的白鸽 阅读(483) 评论(0) 推荐(0)
摘要: 1.springboot配置线程 1.1 springboot默认启动线程 server.port=9000 #配置编码 server.tomcat.uri-encoding=UTF-8 #最大并发数 server.tomcat.max-threads=1000 #接受和处理的最大连接数 serve 阅读全文
posted @ 2020-12-30 17:36 渴望蓝天的白鸽 阅读(2940) 评论(0) 推荐(0)
摘要: JVM内存模型和面试题解析 目录 一、JVM运行时区域 1 程序计数器 2 Java 虚拟机栈 3 本地方法栈 4 堆 5 方法区 6 运行时常量池 7 直接内存 二、对象创建过程 1、类加载检查 2、分配内存 3、初始零值 4、设置对象头 5、执行init方法 三、对象的内存布局 四、对象的访问定 阅读全文
posted @ 2020-12-27 13:05 渴望蓝天的白鸽 阅读(482) 评论(0) 推荐(0)
摘要: HashMap、HashTable、ConcurrentHashMap使用和原理分析(以及内存优化) 哈希码每个对象和基本类型都有的一个方法 hashCode() 可以获取其hashCode默认是 对象的地址经过hash算法转换的整数 String aa = "123"; String bb = " 阅读全文
posted @ 2020-12-27 13:01 渴望蓝天的白鸽 阅读(159) 评论(0) 推荐(0)
摘要: CPU时间片 时间片即CPU分配给各个程序的时间,每个线程被分配一个时间段,称作它的时间片,即该进程允许运行的时间,使各个程序从表面上看是同时进行的。如果在时间片结束时进程还在运行,则CPU将被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。而不会造成CPU资源浪费。 阅读全文
posted @ 2020-12-27 12:45 渴望蓝天的白鸽 阅读(1924) 评论(0) 推荐(0)