自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 收藏
  • 关注

原创 你还在使用if-else写代码吗,今天带你领略下策略模式的魅力!

策略模式

2023-03-08 16:07:57 284

原创 认识适配器模式

适配器模式

2023-03-07 17:40:21 336

原创 设计模式之观察者模式

认识观察者模式

2023-03-07 11:52:16 321

原创 dubbo 内存溢出_JVM Metaspace内存溢出排查

前段时间风控引擎突然超时挂掉,通过排查发现dubbo服务调用一个接口返回数据过大造成的Data length too large: 11557050, max payload: 8388608Java.io.IOException: Data length too large: 11557050, max payload: 838860也会导致Metaspace内存溢出。原因就是Dubbo服务限制大数据传输,最大限制为8M,此时可以修改dubbo提供者的配置层,修改payload属性值。1)在du

2022-02-16 15:39:14 1331

原创 fastjson方法containsKey存在bug

线上场景JSONObject data值:{“is_black”:“0”}String value = data.containsKey(“black_type”)?data.getString(“black_type”):"-888";最后的结果却是null。解决方法,null!=data.get(“black_type”)fastjson中bug还是比较多的。...

2021-03-23 10:47:57 437

原创 Java事务和redis锁使用注意事项

如图中所示,register方法开启了事务,方法里面用到了redis锁,当执行完成后锁释放,事务提交。在这个过程看似没有什么毛病,但是在高并发场景下就会暴露出问题。请求A,B是同一个手机号来注册,A请求首先得到redis锁,B请求等待redis当A请求处理完成,A请求会先判断手机号是否存在(我们默认是没有注册过得手机号,所以是不存在,可以注册得,会将手机号落库)然后释放锁后。B请求可以拿到redis锁,但是此时A请求得事务可能还有提交成功(可以理解为正在提交,因为提交也是需要时间得,可能这个时间很短).

2020-08-17 15:45:24 1476 2

原创 带你一览Mysql 索引的数据结构

InnoDB:MyISAM:

2020-08-14 17:44:06 81

原创 Spring出现循环引用怎么办?

来到新公司两个月了,也逐渐适应熟悉项目。但是项目中有一点和我以前的不一样的,就是不是基于接口编程。不小心造成循环依赖。今天说说如何解决循环依赖的问题吧。A类中注入B,B中也注入了A,这就会导致循环依赖问题。①最好的办法就是解耦,如果A级别高于B,那么A依赖于B,需要控制B不能依赖A②使用@Lazy注解,该注解的bean不是一个完全初始化的bean,只有在第一次调用的时候会去完全创建。...

2020-08-14 17:42:00 436

原创 es查询超过一万条就报错了

Caused by: org.elasticsearch.client.ResponseException: method [POST],typed_keys=true&ignore_unavailable=false&expand_wildcards=open&allow_no_indices=true&search_type=query_then_fetch&batched_reduce_size=512], status line [HTTP/1.1 500 I

2020-07-31 11:24:08 1207

原创 多数据源中,${}表达式到底是什么东西?

2020-06-18 14:18:22 384

原创 es中 QueryBuilders的matchQuery termQuery matchPhraseQuery matchPhrasePrefixQuery 有啥区别啊,这两天把我看蒙了

一、插入数据首先存入一条数据 i like eating and kuing 默认分词器应该将内容分为 “i” “like” “eating” “and” “kuing”二、查询2.1 QueryBuilders.matchQuery(“supplierName”,param)会将搜索词分词,再与目标查询字段进行匹配,若分词中的任意一个词与目标字段匹配上,则可查询到。param = “i” 可查出iparam = “i li” 可查出param = “i like” 可查

2020-06-18 11:26:37 17351 4

原创 探索mysql索引的数据结构

MyISAM索引实现(非聚集索引):MyISAM中索引和数据是分开储存的,并且主键索引和辅助索引(二级索引)的储存方式是一样的。

2020-06-03 14:19:15 102

原创 记录mysql in和not in 效率低下的问题

当数据量过大时(上万条),使用in 或 not in 效率会很低,因为 in 会扫描全表,虽然会走索引,但是效率任然很低,而not in 是不走索引的。此时推荐使用join方式进行关联查询select * from a where id in (select aid from b)可以用下面语句代替,会发现效率提高很多select * from aleft join b on a.id=.........

2019-11-29 17:16:50 9449 4

原创 springboot2.0 fastjson 日期格式化不生效解决

拦截器中,只能有一个类集成WebMvcConfigurationSupport,出现多个类集成WebMvcConfigurationSupport时,配置是不生效的拦截器,里面有一个类继承了WebMvcConfigurationSupport,是把启动类中集成代码转移到这个拦截器中,一切OK了@Overridepublic void configureMessageConverters(Li...

2019-11-20 09:31:04 1709 1

原创 java如何解决跨域

启动类加上@Beanpublic FilterRegistrationBean filterRegistrationBeanCors() {FilterRegistrationBean registrationBean = new FilterRegistrationBean();UrlBasedCorsConfigurationSource source = new UrlBasedCo...

2019-11-14 17:41:28 133

原创 Maven打包配置

src/main/resources **/*.xml **/*.properties false ...

2019-04-20 13:34:12 126

转载 监测微服务+

http://www.ityouknow.com/springcloud/2017/05/10/springcloud-eureka.html

2019-01-18 15:33:20 350

原创 java中反射机制

最近在写一些关于redis的AOP代码,需要用到反射来进行切面编程,特此记录。其中strRedisTemplate是一个bean(StringRedisTemplate),methodName为leftPushAll或者rightPushAll,里面有redis的相关配置,此处就不详细介绍了。public void common(String methodName,String listNam...

2018-12-14 17:29:59 96

原创 JAVA初始化类的加载顺序

2018-11-22 16:59:13 136 1

原创 linux软链接,硬链接

语法:硬链接:ln 源文件 目标文件软链接:ln -s 源文件 目标文件限制:1硬链接目标不能是目录2 硬链接的文件和源文件没什么区别,删除一个,对另外一个也没什么影响,3 两个文件要在相同的文件系统下,不能夸系统...

2018-11-22 13:24:43 100

原创 文件权限

读(r=4)写(w=2)执行(x=1)chmod -R 7557 5 5第一位7,表示当前文件所有者权限第二位5,表示当前文件所有者所在同一个用户组的其他用户权限第三位5,其他用户权限...

2018-11-22 10:53:11 85

原创 shell,获取当前路径

命令:

2018-11-22 10:49:49 5519

原创 安装anaconda

vim /etc/profile在最后加上最后两行,路径根据你安装的anaconda,然后输入python,大功告成

2018-11-16 17:26:07 119

原创 linux函数传参问题

在写脚本时,经常会遇到函数传入的参数和预想的不一样,例如:ExeParam="ps -ef|grep ‘python’ ",讲ExeParam作为参数传递,此时要注意不能单单写,$ExeParam,这样是不正确的,需要“ExeParam”,其中原理还不是太清楚...

2018-11-16 15:09:05 725

原创 心得

在开发代码时,硬编码是很糟糕的一件事情,优雅的代码让人赏心悦目。---------丰哥

2018-11-16 15:03:39 128

原创 linux查看磁盘信息

df -lh 可以查看根目录磁盘使用情况du -sh * 可以查看当前目录里文件所占大小

2018-11-16 14:57:46 1540

原创 备份数据库

2018-11-09 10:14:43 93

原创 python修改配置文件某个字段

思路:要修改的文件filepath将修改后的文件写入f2,删除filepath,将f2名字改为filepath,从而达到修改imort ostag=“name=”midifyInfo=“name=lilei”f1=filepathf2=application.applicationfileInfo=open(filepath)for line in fileInfo:if tag...

2018-11-09 09:59:43 1502

原创 linux_scp

服务器之间传送文件使用linux命令scp A Bscp user@ip:/目录/文件 本地目录scp -r user@ip:/目录 本地目录-r可以cp目录文件A B位置可以互换

2018-11-09 09:50:38 1794

原创 python解析xml

张三 20以上配置文件出现在xml,现在需要解析。首先导入包然后获取这个xml文件的路径,这个其实就是一个难题了,因为服务器上的路径和本地的路径不一样,所以要找出这个两个路径的相同点,通过字符串的拼接得到,for info in devs:name=info.getElementsByTagName(“name”)[0].data这样就可以取到DEV分支下的name节点...

2018-11-09 09:26:22 144

原创 记录下工作中的点滴收获

昨日拿到两台新的服务器B,C,想要通过其他机器A远程登陆,发现是因为没有配置ssh白名单,解决方法:在/etc/hosts.allow 用root用户将服务器A加进去就可以登陆了命令:vim /etc/hosts.allow打开编辑后在里面加入:sshd:A机器的ip:allow...

2018-11-09 09:04:26 462

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除