自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(123)
  • 资源 (2)
  • 收藏
  • 关注

原创 【实战总结】SpringMVC架构升级SpringCloudAlibaba

【实战总结】SpringMVC架构升级SpringCloudAlibaba

2023-07-18 18:02:05 647

原创 KANO模型-产品需求调研利器

KANO 模型是东京理工大学教授狩野纪昭(Noriaki Kano)发明的对用户需求分类和优先排序的有用工具,以分析用户需求对用户满意的影响为基础,体现了产品性能和用户满意之间的非线性关系。

2023-04-12 19:08:56 1701

原创 【实战总结】JVM内存溢出问题排查

这里先说一下结论,堆内存总共3.1G,Suspect1问题指向一个慢SQL,间接导致1.7G内存无法回收,Suspect2 由com.mysql.jdbc.ByteArrayRow导致1.2G内存无法回收,原始sql指向与Suspect1同样的慢SQL,这样就基本可以确定是这一条慢SQL导致的内存溢出。打开MAT,File--->open dump file--->选择本次输出的dump文件,可以看到如下总览页面,点击Leak Suspects查看内存泄露分析。一周前系统有一次投产,之后再没有更新过系统。

2023-01-06 00:03:40 7824 1

原创 Windows系统安装Flink及实现MySQL之间数据同步

Windows系统安装Flink及实现MySQL之间数据同步

2024-02-06 17:50:26 1986 3

原创 【源码解析】Mybatis执行原理

Mybatis中的mapper接口并没有具体实现,是如何执行SQL的?

2023-07-19 21:21:52 1277

原创 【实战总结】Apollo、RocketMQ加载顺序问题

Apollo、RocketMQ加载顺序问题

2023-07-08 14:35:32 1280

原创 Thumbnails图片处理库代码分析

Thumbnails图片处理库代码分析,探究压缩系数scale与实际图片压缩比例之间的关系。

2023-07-04 22:59:01 1270

原创 Arthas实现热更新代码

Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。

2023-05-21 17:29:54 1653 1

原创 【实战总结】itextpdf添加水印及水印覆盖问题

itextpdf添加水印及水印覆盖问题

2023-04-27 10:13:47 3771

原创 Volatile 线程可见性

线程不可见原因:每个线程会将成员变量保存一份备份到各自线程的工作内存,而各线程之间内存是私有的,除非更新到主内存,才会被其他线程看到。

2023-03-23 19:45:24 135 2

原创 【计算机系统】CPU是如何运行程序的

【计算机系统】CPU是如何运行程序的

2023-02-22 00:26:04 3021

原创 如何写出优雅的代码

方法对应的是一个行为,每个方法应该独立做一件事,如果要做多件事应该通过调用多个不同方法实现,好的方法应该是高内聚、低耦合。说白了就是别把一大段错综复杂的逻辑都塞到一个方法里,按照行为拆一拆,拆出一些能复用的方法。

2023-02-11 00:30:08 504

原创 notepad++替代软件notepad--

notepad--性能和功能不亚于notepad++,大家尽早替换。

2023-02-05 23:07:51 2133 3

原创 我的2022总结和2023展望

珍惜当下的经历,生活就是一段段经历、修心,感受不同的经历,不要等到某个时候再去做什么事,人生没有过渡,你不能等到生活不再艰难了,才决定开始快乐。

2023-01-19 20:45:00 1795 1

原创 Logback、Log4j2、Log4j全局限制单条日志打印长度

例如限制单条日志长度10k,将%m替换为%maxLen{%m}{10240},未测试效果。例如限制单条日志长度10k,将%msg替换为%.-10240msg,从左侧截取固定长度。例如限制单条日志长度10k,将%m替换为%.10240m,但是会从末尾开始截断。

2022-11-17 20:30:33 6860

原创 pgloader部署及使用-mysql迁移pg

pgloader用于将mysql数据库迁移到pg数据库,之前用DTS进行迁移,自增主键没有正常迁移,所以改为使用pgloader。pgloader部署在linux环境,支持apt-get 方式、源码部署和docker部署。pgloader官网:https://pgloader.io/pgloader mysql迁移pg官方技术文档服务器系统版本#lsb_release -aLSB Version: :core-4.1-amd64:core-4.1-noarchDist...

2021-02-05 16:22:27 3203 2

原创 jenkins自动清理构建

jenkins自动构建随着项目和构建次数的增加,服务器磁盘会被撑爆,因为/var/lib/jenkins/jobs/项目名/modules下会保存每次构建的jar包。可以通过配置丢弃自动构建解决。解决办法:进入jenkins项目-配置-勾选Discard old bulids(丢弃旧的构建),并设置发布包保留天数和保留个数。这样在下次构建的时候就会按照策略清理构建产生的发布包。...

2021-01-14 16:06:40 2300 1

原创 druid 数据库密码加密

druid ConfigFilter wiki文档https://github.com/alibaba/druid/wiki/%E4%BD%BF%E7%94%A8ConfigFilter生成密钥cd C:\Users\Administrator\.m2\repository\com\alibaba\druid\1.1.6java -cp druid-1.1.6.jar com.alibaba.druid.filter.config.ConfigTools XsF10@123!!publi

2020-11-24 10:11:25 770

原创 idea Terminal git log 中文乱码

idea Terminal git log 中文乱码IDEA terminal git commit时输入中文无法看到光标移动,而且git log显示中文出现如下乱码:解决办法:在git安装目录下找到etc/bash.bashrc文件,在文件的最后添加: export LANG="zh_CN.UTF-8" export LC_ALL="zh_CN.UTF-8" 如果git bash中可以正常显示中文,可忽略该条。在IDEA Ter...

2020-11-12 10:52:10 203

原创 jenkins DingTalk配置钉钉群消息通知

由于jenkins邮件通知经常被冻结掉,而且通知效果不好,正好公司使用钉钉交流比较多,有专门的部署发版通知群,所以决定使用jenkins结合钉钉机器人在构建完成后自动发送消息至钉钉群中。从网上搜索了很多帖子建议使用Dingding[钉钉] Plugin,但我在插件管理中没有找到这个插件,我的jenkins版本是Jenkins 2.240,这是2020-06-08发行的版本,目前来看是比较新的版本,不知道为什么搜不到插件。但是插件管理中找到一个叫DingTalk的插件,配置和使用更加简单。jenkin

2020-09-29 15:46:03 1775 1

原创 docker异常:Error response from daemon: Get https://harbor/service/token: no such host

当从docker harbor私服拉取镜像时,报如下错误Error response from daemon: Get https://10.10.8.1xx/v2/test/tomcat/manifests/8.5.57-jdk1.8.0_65: Get https://harbor/service/token?scope=repository%3Atest%2Ftomcat%3Apull&service=harbor-registry: dial tcp: lookup harbor

2020-09-29 15:17:41 2391

原创 docker异常:Error response from daemon: Get https://10.10.8.1xx/v2/: x509: certificate signed by unknow

在执行docker-compose up命令时抛出如下异常:Error response from daemon: Get https://10.10.8.1xx/v2/: x509: certificate signed by unknown authority报错中的ip地址是harbor私服地址,使用docker-compose up从harbor拉取镜像时缺少权限。尝试使用以下方式解决:1.确认用户是否在docker组内#如果还没有 docker group 就添加一个su

2020-09-29 15:04:23 5881

原创 jenkins误删管理员权限补救办法

今天考虑到项目的安全问题,想把删除项目权限都给取消,但发现这个admin不管怎么勾选,都具有所有权限,不信邪的我取消了一下下图中的Administer,然后我发现彻底失去了管理员权限,无法修改任何jenkins配置。jenkins这个权限设置我觉得很不人性化,还有,千万别动管理员权限!下面介绍万一误删了管理员权限,如何补救。1.修改jenkins服务器config.xml我这里jenkins路径是 /var/lib/jenkins。编辑之前先进行备份:cp config.xml con

2020-08-27 11:48:36 3569 6

原创 jenkins配置构建后邮件通知

本文介绍如何在完成基于jenkins的持续集成部署后,将结果邮件通知相关人员。一、安装Email Extension插件系统管理->管理插件,选择Email Extension Plugin插件进行安装。二、系统配置系统管理->系统设置,配置邮箱1、设置管理员邮箱地址2、设置Extended E-mail Notification上图中邮箱以邮箱登录授权码作为认证密码,以新浪邮箱为例,生成授权码操作如下:3、配置邮件内容模版Def.

2020-08-26 10:53:20 1291

原创 jenkins用户权限分配

目前我使用的jenkins平台上只有一个管理员用户admin,权限过大,多人使用可能会误操作,其实测试人员只需要read和build权限,下面介绍如何为不同jenkins用户分配权限。1.安装插件Role-based Authorization Strategy2.修改授权策略为Role-Based Strategy管理Jenkins--》Configure Global Security--》授权策略3.修改角色配置管理Jenkins--》Manage and Assign R

2020-08-17 15:30:49 851

原创 spring参数校验消除重复代码

spring参数校验的目的是消除类似下面的重复代码,通过注解的方式进行参数校验。if (acctBindParam.getAccChgSeq() == null) { throw new BusinessException("-1", "变更流水号为空");}if (StringUtil.isEmpty(acctBindParam.getDataSrc())) { throw new BusinessException("-1", "数据来源为空");}if (Strin...

2020-07-19 23:07:49 602

原创 openresty安装及运行nginx

openresty介绍OpenResty (也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。这里只介绍使用openresty快速部署nginx服务。openresty安装步骤下载openresty源码包wget https://openresty.org/en/download...

2019-12-03 18:47:04 1655 1

原创 阿里云OSS简单上传

阿里云oss官方文档:https://help.aliyun.com/document_detail/84781.html?spm=a2c4g.11186623.2.23.5d362d36BLTMHk1.pom文件:<dependency> <groupId>com.aliyun.oss</groupId> <artifac...

2018-09-29 10:36:54 2372

原创 OCR识别测试demo

OCR测试类:/** * 测试ocr识别 */ @Test public void testOcr() { byte[] imageBytes = new byte[0]; try { // 获取文件字节数组 imageBytes = DownLoadPicUtil.rea

2018-01-31 11:44:00 3469

原创 Log4j输出日志到单独日志文件

正常情况下log4j的info日志会打印到统一的日志文件,当需要查看特定功能的执行情况,打印特定功能到指定日志文件,方法如下:log4j.properties### set log levels ###log4j.rootLogger = INFO , C , D , E### console ###log4j.appender.C = org.apache.log4j.ConsoleAp...

2018-01-31 09:01:03 24497 2

原创 ImageMagick和Im4java处理图片

im4java是ImageMagick的一个Java开源接口。与JMagick不同之处在于im4java只是生成与ImageMagick相对应的命令行,然后将生成的命令行传至选中的ImageCommand(使用java.lang.ProcessBuilder.start()实现)来执行相应的操作。它支持大部分ImageMagick命令,可以针对不同组的图片多次复用同一个命令行。原生java

2018-01-25 12:00:26 1666

原创 eclipse mat插件安装

1.eclipse插件安装点击help ---install new software------add 然后添加新地址,路径为:http://download.eclipse.org/mat/1.3/update-site/这种方式看网络状态,经常不好用2.本地安装官网地址 http://www.eclipse.org/mat/downloads.php选择更早版本(最新版需要收费),点击win

2018-01-19 17:43:09 5017

原创 nginx部署nodejs前端项目

前端项目打包下载nodejs下载地址:https://nodejs.org/en/download/执行npm -v,查看安装是否成功。下载nodejs依赖包在项目目录下执行 npm iCompiled successfully!The app is running at:http://localhost:8007/项目打包npm run build打包后的代码保存在 /dist目录下l

2018-01-19 09:34:40 9350

原创 idea控制台乱码

1.打开Intellij的安装的bin目录,idea.exe.vmoptions和idea64.exe.vmoptions中增加一行配置:-Dfile.encoding=UTF-82.setting-File Encoding配置编码为UTF-83.配置服务器启动参数maven项目乱码解决方法

2018-01-15 10:49:19 242

原创 RSA加密/解密 Decryption error异常解决

RSA加密/解密 Decryption error异常解决import

2018-01-15 10:02:42 83930 14

原创 maven异常 编码GBK的不可映射字符

maven 编码GBK的不可映射字符 异常解决方式如下: 建议每个pom程序中都加入此配置<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugi

2018-01-02 10:45:13 330

原创 java 循环中String与StringBuilder效率探究

测试类:public class StringTest { @Test public void testString() { String str = ""; for (int i = 0; i < 3; i++) { str += i; } System.out.println(str);

2017-12-08 15:22:56 1720

原创 git常用命令之git push使用说明

git push使用说明Gitpush命令用于将本地分支的更新,推送到远程主机。它的格式与gitpull命令相仿。$ git push :注意,分支推送顺序的写法是:,所以git pull是:,而git push是:。如果省略远程分支名,则表示将本地分支推送与之存在”追踪关系”的远程分支(通常两者同名),如果该远程分支不存在,则会

2017-06-26 18:44:37 1905

转载 lombok在IntelliJ IDEA下的使用

lombok是一款可以精减java代码、提升开发人员生产效率的辅助工具,利用注解在编译期自动生成setter/getter/toString()/constructor之类的代码。代码越少,意味着出bug的可能性越低。官网地址:https://projectlombok.org/ 首页有一段几分钟的演示视频,看完就明白是怎么回事了。先来二段对比代码:这是用lombok后的j

2017-06-26 11:41:06 506

转载 错误:java.security.InvalidKeyException: Illegal key size or default parameters解决方法

Java几乎各种常用加密算法都能找到对应的实现。因为美国的出口限制,Sun通过权限文件(local_policy.jar、US_export_policy.jar)做了相应限制。因此存在一些问题:●密钥长度上不能满足需求(如:java.security.InvalidKeyException: Illegal key size or default parameters);●部分算法未能支

2017-06-24 15:45:46 2811

docker制作java service镜像.docx

该文档介绍如何通过docker制作java应用镜像,将java程序运行在docker容器中。

2020-07-23

代码大全(英文版)Steve M. McConnell

英文版的代码大全,有兴趣可以研究下,程序员必读经典!

2014-08-06

空空如也

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

TA关注的人

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