自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 开源组件(整理)

开发类:运维类:

2021-07-20 16:15:29 3810

原创 mysql计算年周的DATE_FORMAT函数不准确

值为52,hutool值为53,不满足-1差值。解决,mysql跟hutool到年周的计算结果。上述mysql的DATE_FORMAT的函数。值为1,hutool计算出的周为1,但是。

2024-01-03 13:54:43 407

原创 线程池使用不规范导致线程数大以及@Async的规范使用

线程不被GC回收,主要是线程池的gc root还是有可达路径的。这里讲个冷知识,这里的线程池的gc root是线程,具体的gc路径是。方法,通知线程中断,当worker进行getTask()时,让处于wait的线程打断,抛出异常,workers捕获该worker,等到workers对象空了,并且当前tomcat线程也结束,此时线程池对象也可以被gc掉,整个线程池对象成功释放。原理是,shutdown方法是遍历所有线程,并且调用线程的。线程池的使用不规范,导致程序中线程数不下降,线程数量大。

2023-08-29 15:49:53 904

原创 lettuce连接池的源代码(link)

springboot研究九:lettuce连接池很香,撸撸它的源代码_lettuce springboot_君哥聊技术的博客-CSDN博客

2023-08-04 16:37:06 184

原创 spring事务跟redis事务执行,redis返回null的问题

spring的事务@Transactional 中执行 Redis 命令,如果都使用的redisTemplate,有的地方设置了redis的事务,有的地方不使用redis的事务,导致redis执行redisTemplate.opsForValue().increment("count", 1);解决的好办法就是:事务redisTemplate跟非事务redisTemplate分开使用。

2023-03-24 18:22:55 223 1

原创 safepoint jvm GC,cpu获取不到导致GC时间长

程序Thread全部进入到safepoint,然后开始GC,如果获取不到CPU或者边界很大的循环导致thread进入safepoint的时间长,会导致GC时间过长。

2023-01-11 18:18:24 131

原创 jar包多重依赖版本不兼容的冲突,shade总结

现在项目canal模块依赖ali的jar包导致jar包重启,程序启动异常,依赖关系如下:版本冲突,通过类加载的方式隔离,这个canal依赖关联的类太多,不合适。通过shade的方式进行修改类的package,打成一个jar的方式。 1、shade的使用尽量采用官方的文档2、canal-client的jar本身就是shade出来的,看pom可以发现3、canal-client中包的依赖比较复杂,不是适合再shade,shade方式适合干净的jar进行单独的类进行shade4、shade需要指定jdk版本,否则

2022-06-16 20:36:40 605

转载 jar包冲突,jar包隔离(转)

转自:https://blog.csdn.net/qq_37527921/article/details/102839369最近项目需要使用jar包隔离技术,所以了解了几种方案,本文针对几种不同方案进行了介绍,不同问题有各自合适的方案,正在解决类似问题的同学可以通过本文快速了解jar包隔离的几种技术。通常自己写代码是,大家都忽略这些问题了,但是当项目越大,需要对接的业务越多时,这些问题就日益严重了, 这时候,就需要对jar包进行统一管理了,可以统一组件jar包版本,也可以容器化隔离方案。今天就给大家介绍一下

2022-06-16 14:22:24 1397

转载 CSDN怎么转载别人的博客(转)

在参考“如何快速转载CSDN中的博客”后,由于自己不懂html以及markdown相关知识,所以花了一些时间来弄明白怎么转载博客,以下为转载CSDN博客步骤和一些知识小笔记。 参考博客原址:http://blog.csdn.net/bolu1234/article/details/518670991.CSDN博客页面右键,点击【检查】 点击检查后,页面右侧出现html代码,如下图 2.如果需要转载全文,则在html代码下侧点击选中article_content 即可,会在代码框中自动选中art

2022-06-15 19:33:22 163

转载 【无标题】CanalAdmin搭建Canal Server集群(转)

使用来搭建一个canal集群。1234 2、配置canalAdmin 1 5、登录canal admin 多个canal server同一个 canal 配置。(此处主要配置的是 canal.properties)zk 的地址需要指定canal.zkServers = 127.0.0.1:2181,127.0.0.1:3181,127.0.0.1:4181canal.serverMode = tcpcanal.instance.global.spring.xml = classpath:sprin

2022-06-15 19:26:47 325

转载 Kafka数据同步到kafka的几种方案(转)

转自:https://blog.csdn.net/tmaczt/article/details/115274144背景:针对老系统重构涉及业务系统众多,全链路部署测试环境耗时较长,于是有了kafka中间层集群之间数据同步的想法。方案:1、Kafka自带的镜像工具kafka-mirror-maker.shMirrorMaker是Kafka附带的一个用于在Kafka集群之间制作镜像数据的工具。该工具从源集群中消费并生产到目标群集。step1:编写consumer-test.prope..

2022-03-11 11:55:40 4838

转载 Springboot应用中设置Cookie的SameSite属性,跨域支持

转自:Springboot应用中设置Cookie的SameSite属性 - SpringBoot中文社区 - 博客园Cookie除了key和value以外有几个属性。httpOnly是否允许js读取cookie secure是否仅仅在https的链接下,才提交cookie domaincookie提交的域 pathcookie提交的path maxAgecookie存活时间 sameSite同站策略,枚举值:StrictLaxNone其他的都很熟悉了,最后一个是 Chro...

2022-02-07 16:46:56 9454 3

原创 postgres数据库java开发,Geometry类型对象映射

postgres数据库中用到postgis地理类型的字段时,java跟数据库的映射entity,根据hibernate的版本不同,映射的对象是不一样的,否则会报class not found错误。几种映射如下:@Type(type = "jts_geometry")@Column(name = "point")private Point point;或者@Column(name = "point",columnDefinition="Point")private Point p

2021-10-15 21:20:39 3026

转载 Linux 监控工具 tsar(转)

转自:https://blog.csdn.net/u010945668/article/details/113904993简介    tsar是一个淘宝开发的服务器信息采集工具。支持采集的信息如下:系统信息:如cpu、io、mem、tcp等应用数据:squid、haproxy、nginx等其他:自定义模块具体介绍请参看以下文档:tsar 官网tsar工具使用Linux系统性能监控工具介绍之-tsartsar 安装安装准备tsar 需要编译安装,安装前我们需要确保有编译环境

2021-08-20 21:34:13 1147

转载 一些顶级的开源CI/CD工具(转)

转自:https://blog.csdn.net/zl1zl2zl3/article/details/85523461CI/CD 实践对于基础设施、第三方应用程序和内部开发的应用程序同样适用。虽然有许多不同的工具可以实践 CI/CD,但这些工具都使用类似的模型。最重要的也许是,引导公司采取这种新的做法会让你在公司里处于一个强有力的地位,成为别人前进的灯塔。持续集成、持续交付和持续部署(CI/CD)在开发社区中已经存在多年。有些组织已经有相应的运营工具,但许多没有。对于大多数组织来说,运营团队必须像

2021-07-27 11:37:41 1437 1

转载 再谈应用环境下的TIME_WAIT和CLOSE_WAIT(转)

原文链接:https://blog.csdn.net/shootyou/article/details/6622226昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下:http://blog.csdn.net/shootyou/article/details/6615051里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态。在服务器的日常维护过程中,会经常用到下面的命令:netstat -n | awk '/^tcp/ {

2021-05-19 20:58:59 90

原创 Spring Cloud Alibaba(持续补充)

官网介绍文档:https://developer.aliyun.com/article/762296?utm_content=g_1000128689官方git地址:https://github.com/alibaba/spring-cloud-alibaba后续的研究进行补充

2021-05-11 16:09:06 110

转载 HiKariCP和Druid对比(转)

转自:https://blog.csdn.net/qq_17085463/article/details/90486515HiKariCP和Druid我们所熟知的C3P0,DBCP,Druid, HiKariCP为我们所常用的数据库连接池,其中C3P0已经很久没有更新了。DBCP更新速度很慢,基本处于不活跃状态,而Druid和HikariCP处于活跃状态的更新中,这就是我们说的二代产品了。HiKariCP字节码精简 :优化代码,直到编译后的字节码最少,这样,CPU缓存可以加载..

2021-05-07 16:30:07 885

转载 LEFT JOIN关联表中ON,WHERE后面跟条件的区别(转)

转自:https://mp.weixin.qq.com/s/D-7ZX-0mgEAH6KEeMKbLDQ之前有码友去京东面试,被问到 LEFT JOIN 关联表中用 ON 还是 WHERE 跟条件有什么区别,很快就答出来了,可是追问什么原因造成这一情况的,一时没回答上来。下面说说,想通过 A left B join on and 后面的条件来使查出的两条记录变成一条,奈何发现还是有两条。后来发现 join on and 不会过滤结果记录条数,只会根据and后的条件是否显示 B表的记录,A表.

2021-05-07 15:43:14 527

原创 给定一个二叉树,返回每层上节点的链表,设计算法

思路:1、链表存储每层节点的数据,这样保证指针后移,进行存储该层的节点。2、遍历上层的节点,通过队列的pull跟add,遍历该层的节点后pull出,同时添加上下个循环要遍历的节点(下层的父节点)。具体代码如下:import java.util.*;public class ListTreeNodeDepth { /** * 时间复杂度 o(n) 空间复杂度o(n) * @param args */ public static void

2021-04-28 21:29:31 188

转载 Spring Boot Actuator从未授权访问到getshell,可以进行操作漏洞(转)

项目中被扫描到有安全漏洞,主要是原因利用了spring boot 的env,加refresh进行获取到getshell,进行的操作。可以通过spring配置文件中增加endpoints.env.enabled= false,禁止env操作;也可以通过配置spring security 增加账户密码访问。————————————————————————————————————————————————详细信息参考:https://blog.csdn.net/qq_38154820/article/det

2021-04-12 17:11:00 1316

转载 Redis分布式锁的实现原理--Redisson(转)

转自:https://mp.weixin.qq.com/s?__biz=MzU0OTk3ODQ3Ng==&mid=2247483893&idx=1&sn=32e7051116ab60e41f72e6c6e29876d9&chksm=fba6e9f6ccd160e0c9fa2ce4ea1051891482a95b1483a63d89d71b15b33afcdc1f2bec17c03c&scene=21#wechat_redirect一、写在前面现在面..

2021-03-11 16:54:15 214

原创 protobuf数据结构化和数据序列化

google出的protobuf提供了数据结构化和数据序列化,相比于XML,JSON,protobuf更小,利用二进制进行传输,也实现不同类型的转化XML、JSON、Protobuf 都具有数据结构化和数据序列化的能力 XML、JSON 更注重 数据结构化,关注人类可读性和语义表达能力。Protobuf 更注重 数据序列化,关注效率、空间、速度,人类可读性差,语义表达能力不足 Protobuf 的应用场景更为明确,XML、JSON 的应用场景更为丰富详细介绍可以参考https://www.jian

2021-01-06 20:15:07 564

转载 spring cloud feign(转)

转自:https://blog.csdn.net/forezp/article/details/73480304转载请标明出处:https://blog.csdn.net/forezp/article/details/73480304本文出自方志朋的博客出自方志朋的博客什么是FeignFeign是受到Retrofit,JAXRS-2.0和WebSocket的影响,它是一个jav的到http客户端绑定的开源项目。 Feign的主要目标是将Java Http 客户端变得简单。Feign的源

2020-12-25 17:28:46 107

原创 spring cloud zull

zull架构图zull主要做限流(RateLimit)、路由、拦截处理源码先从@EnableZuulProxy标签开始链接进去查看@EnableCircuitBreaker@EnableDiscoveryClient@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Import({ZuulProxyConfiguration.class})public @interface EnableZuulProxy

2020-12-23 20:25:29 160

转载 Spring Cloud Hystrix源码分析(转)

转自:https://blog.csdn.net/chayangdz/article/details/82561158?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.cont

2020-12-17 20:05:35 108

转载 一次JVM_OLD区占用过高、频繁Full GC的解决过程【转】

转自:http://www.liuzk.com/294.html最近,公司网站频繁报警,JVM_OLD占用过高,线上访问超时严重,针对这个问题着实头疼了一把,不过最终还是解决了,下面说下解决的过程。1,首先 登到线上机器上去,top命令,查看当前机器的负载,查看当前哪个进程在消耗资源。Shell 1 top 找到CPU或者内存占用过高的那个进程。发现有一个进程,CPU居高不下,保留进程id2,top命令,继续跟踪该进程里的所有线程,找到占用CPU过

2020-12-01 19:40:07 4296

转载 MySQL索引-B+树【转】

转自:http://www.liuzk.com/410.html索引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。索引最形象的比喻就是图书的目录了。注意这里的大量,数据量大了索引才显得有意义,如果我想要在 [1,2,3,4] 中找到 4 这个数据,直接对全数据检索也很快,没有必要费力气建索引再去查找。索引在 MySQL 数据库中分三类:B+ 树索引 Hash 索引 全文索引我们今天要介绍的是工作开发中最常接触到的 InnoDB 存储引擎中的 B+ 树索引。要介绍

2020-12-01 19:34:31 82

原创 eureka分析

@EnableEurekaClient@EnableDiscoveryClient -->EnableDiscoveryClientImportSelectorEnableDiscoveryClientImportSelector继承了SpringFactoryImportSelectorSpringFactoryImportSelector中selectImports中有下面一段话SpringFactoriesLoader进行META-INF/spring.factories中的c.

2020-07-16 20:27:56 279

原创 Spring-Retry应用集成重试机制

详细可参考:https://blog.csdn.net/songhaifengshuaige/article/details/79441326

2020-07-16 20:14:07 210

转载 Java魔法师Unsafe

Unsafe是位于sun.misc包下的一个类,主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很大的作用。Unsafe的单例实现:...

2020-06-10 20:58:55 183

原创 CAS了解以及Java中CAS应用

CAS是Java并发包中保证并发的核心思想,其原理调用处理器的cmpxchg指令CAS是具体理解就是比较转化,如果内存中数据值一致,则修改为新值。Java中java.util.concurrent.atomic并发包中的数据进行处理就是利用的CAS原理,以AtomicInteger为例,类中getAndSet直接调用unsafe.getAndSetInt,unsafe中循环执行native方法执行内存操作,不成功取最新的值再尝试更新,直到成功。追踪JNI对应的unsafe.cpp后,发现Unsafe_C

2020-06-09 20:54:50 401

原创 Mac安装Tesseract,使用Tess4j实现OCR识别

Tesseract是一个开源的OCR引擎,支持多国语言,其官方地址:https://github.com/tesseract-ocr/tesseract1.MAC下安装Tesseract命令安装brew install --with-training-tools tesseract,现在提示Error: invalid option: --with-training-tools,没有--with-training-tools参数,想把训练工具training-tools一起安装了,最后采用编译的方.

2020-05-22 17:06:38 1345

原创 GitHack针对.git的漏洞以及修复

GitHack是一个 .git 文件夹公开漏洞。它在保持目录结构不变的同时从. git 文件夹重建源代码。解析.git/index文件,找到工程中所有的:( 文件名,文件sha1)GitHack的使用:1、下载https://github.com/lijiejie/GitHack2、到本地文件中执行python 脚本 切换到GitHack的路径下 cd ...

2020-04-25 19:35:20 1759

原创 java调用webservice的2种方式代码

webservice有提供wsdl跟asmx两种方式,两种方式的调用方法不同1、wsdl的方式添加依赖:<dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt-frontend-jaxws</artifactId> <v...

2020-03-13 15:58:08 1977

原创 Katalon--Mac环境搭建,Mobile之Android调试

Katalon自动化测试工具,官方地址:https://www.katalon.com/1.官网下载https://www.katalon.com/download/对应的安装包dmg2.进行一步步安装3.katalon需要注册一个账号,使用邮箱注册就可以便可以4.Katalon Chrome插件Katalon Automation Recorder,用于katalon自动化是记录...

2020-01-07 20:21:40 600

原创 selenium入门--环境搭建

Selenium是一个涵盖了一系列工具和库的总体项目,这些工具和库支持并支持Web浏览器的自动化。官方地址:https://selenium.dev/documentation/en/Selenium之Java环境搭建Java版本1.8,具体安装、环境配置略开发IDEA工具具体代码,maven引入jar包:<!-- https://mvnrepository.com...

2019-12-11 17:49:47 378

原创 Mysql之group by GROUP_CONCAT的保证顺序

groub by 是按照分组,默认不排序,groub后会选择默认排序的第一条进行返回。如果分组前排序好的数据,取排序好的第一条数据排序,则需要加上limit ,进行强制排序。 SELECT m.* from ( SELECT if ( a.status = 'X002', a.fleet_na...

2019-11-27 19:30:37 5007

转载 12306并发解决思路(转)

转自https://github.com/GuoZhaoran/spikeSystem#12306%E6%8A%A2%E7%A5%A8%E6%9E%81%E9%99%90%E5%B9%B6%E5%8F%91%E5%B8%A6%E6%9D%A5%E7%9A%84%E6%80%9D%E8%80%83架构图:总结首先是3重负载进行分流其次采用预扣库存,异步产生订单的方式,避开对DB的...

2019-10-30 20:29:35 1399

转载 mac下载iterm2,以及安装及配置rz sz(转载)

转自:https://segmentfault.com/a/1190000012166969环境Mac ox 10.12.3 iTerm2-3_1_5安装iTerm2建议去官网下载http://www.iterm2.com/ 也可以使用我提供的百度云链接 链接:http://pan.baidu.com/s/1geDTosj密码:3rm2安装方式和苹果的安装方式是一样的,解压...

2019-10-28 20:10:42 1344

空空如也

空空如也

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

TA关注的人

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