JAVA后端开发
文章平均质量分 64
发哥随手记
随缘作家,随缘分享
展开
-
shardingsphere做了读写分离做了主从配置脱敏无效分析
shardingsphere配置了主从读写分离导致脱敏配置失效原创 2022-09-17 21:27:25 · 1209 阅读 · 2 评论 -
SpringCloud项目引入feign一直依赖失败
在新建SpringCloud项目的时候,引入feign的maven依赖一直提示找不到依赖包原创 2022-07-09 23:20:27 · 1198 阅读 · 0 评论 -
spring-cloud-alibaba和spring-cloud版本映射记录
最近发现每次新建项目都要找一下spring-cloud-alibaba和spring-cloud版本的映射关系,官方文档隐藏的比较深,特意记录一下spring-cloud-alibaba和spring-cloud两个生态下的版本映射关系。原创 2022-07-09 18:55:57 · 176 阅读 · 0 评论 -
压力测试TPS上不去,但是系统资源又很清闲
压力测试TPS上不去,但是系统资源又很清闲背景项目需要进行阶段性压力测试,所以想模拟真实的正式环境,所以是直接使用域名访问进行压力。整个请求链路大概如下:现象就是Jmeter压力测试的结果的TPS很低,基本在200TPS甚至100TPS以下,但是机器的配置非常高(32C + 64G)。当时第一次遇到这种现象很懵逼,没办法,第一次一个人从0做一个系统,压力测试。第一次遇到的现象是直接上不去TPS,空接口也上不去;第二次遇到是TPS能瞬间上去很高,但是立马掉下来,稳不住,但是空接口没问题,可以继续稳住原创 2021-06-26 22:19:53 · 6858 阅读 · 2 评论 -
Mybatis一级缓存的坑
Mybatis一级缓存的坑前序接着上篇文章插入唯一数据的各种问题。中间过程说Spring的事务,是不是在生命周期的时候程序提交了事务,但是数据库没有提交事务。其实不会的,当时写文章的时候只是根据当时的现象去推测,后来我用代码测试实际是会提交事务的。Spring是没有错的。代码如下:@Transactional(propagation = Propagation.REQUIRES_NEW, i...原创 2020-03-27 22:43:05 · 1080 阅读 · 0 评论 -
mybatis的两级缓存
Mybatis的两级缓存Mybatis的缓存有两种,分为一级缓存和二级缓存,它们的作用域不同。一级缓存一级缓存我个人也叫session缓存,它默认是开启的,不可配置的。为啥叫session缓存,是因为它的作用域是session范围内的,也就是说同一个session的情况才能使用到一级缓存,目前我遇到的情况就是在一个事务内查询两次数据就会使用到一级缓存。所以说这个一级缓存其实很坑的,基本使用不...原创 2020-03-21 18:44:33 · 338 阅读 · 0 评论 -
Spring事物认识不清插入唯一数据的各种问题
上篇文章中解决了死锁问题,但是新问题出现,我发现user_data表中有重复的user_id记录。原因分析不言而喻,并发插入引起。上次代码:@Transactional(propagation = Propagation.REQUIRES_NEW)public void update(userId, numData){ D userData = selectByUserId(userId...原创 2020-03-21 18:24:02 · 812 阅读 · 0 评论 -
一次MySQL死锁记录
一次被自己蠢到的数据库死锁经历先说这次事件的背景故事,一个创业项目,需要冷启动。该项目类似于微博的一个项目,所以冷启动需要导入一批微博数据和微博评论数据,导入数据还需要在马甲账号加上统计数据,因为可以查看他人中心,不然太假。就在更新马甲账号统计数据的时候老是发生死锁。技术背景,我开一个接口给爬虫工程师上传约定的标准json文件,由于考虑数据可能会比较多,所以用了一个线程池去插入数据,线程池大小...原创 2020-03-21 18:16:34 · 361 阅读 · 0 评论 -
Logback日志配置
Logback日志配置Logback越来越流行,不过使用过程中觉得还不错,配置简单明了。不过有几点需要注意的是:Spring-boot中使用Logback不需要再引入Logback的三个jar包,因为在spring-boot-starter-logging已经集成了它。几种日志过滤器,需要了解明白,不然不能配置到自己想要的效果的日志。本人配置如下:<configuration ...原创 2019-09-29 10:23:55 · 230 阅读 · 0 评论 -
logback新认识(一):logback主要组件appender、rollingPolicy和triggeringPolicy的使用和理解
原文地址:logback新认识(一):logback主要组件appender、rollingPolicy和triggeringPolicy的使用和理解CSDN别人转载logback日志必备。平时在新建项目的时候都是Ctrl+C和Ctrl+V,完全不要自己做什么,不管使用Springmvc还是Springboot都不需要配置logback.xml文件的位置,直接将logback.xml放到res...转载 2019-09-29 09:35:18 · 1044 阅读 · 0 评论 -
文章收藏列表
文章收藏列表关于sharding-jdbc的配置多主多从的配置[1]:https://segmentfault.com/a/1190000018383549?utm_source=tag-newest整合mybatis-plus的配置及水平拆分策略[2]:https://www.jianshu.com/p/de867b4a11ab...原创 2019-07-11 17:55:18 · 256 阅读 · 0 评论 -
CountDownLatch、CyclicBarrier和Semaphore几个并发容器的使用
CountDownLatch、CyclicBarrier和Semaphore几个并发容器的使用在讲这几个容器之前,本人讲述一个小面试题,该题的描述:让A、B、C三个线程同时执行,并且依次输出A、B、C三个字母十次。面试时,想法方向是对的,但是结果是错的。我想到的是两种实现,分别是:wait、notifyAll配合使用和并发容器的使用。CountDownLatch该容器主要的作用是:多个线程之...原创 2019-05-14 21:37:28 · 393 阅读 · 0 评论 -
使用java8的lambda将list转为map(转载)
常用方式代码如下:public Map<Long, String> getIdNameMap(List accounts) {return accounts.stream().collect(Collectors.toMap(Account::getId, Account::getUsername));}收集成实体本身map代码如下:public Map<Long...转载 2018-10-26 09:39:29 · 357 阅读 · 0 评论 -
volatile关键字解析
最近看的这边关于java的volatile关键字的解析,分析的非常好,特意转载,收藏转载 2017-07-29 14:41:39 · 253 阅读 · 0 评论 -
Java Lambda表达式入门
简介(译者注:虽然看着很先进,其实Lambda表达式的本质只是一个"语法糖",由编译器推断并帮你转换包装为常规的代码,因此你可以使用更少的代码来实现同样的功能。本人建议不要乱用,因为这就和某些很高级的黑客写的代码一样,简洁,难懂,难以调试,维护人员想骂娘.)Lambda表达式是Java SE 8中一个重要的新特性。lambda表达式允许你通过表达式来代替功能接口。 lambda表达式就和方转载 2016-09-23 11:42:30 · 352 阅读 · 0 评论