- 博客(46)
- 资源 (5)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 群晖nas synology DSM 7.2设置钉钉Webhooks通知,发送钉钉消息
注意这里的access_token=XXX,要把XXX替换为你的机器人的access_token(前面我们已经获取到复制出来了哈)在通知方式页面中,点击“新增”按钮,弹框中,提供商下拉选一下”自定义“,规则大家按需选择我这里选ALL。提供商名称:可以是任何你想要的名称,用于标识这个自定义通知方式。HTTP主休,把下面的json复制进去,记得把atMobiles的值换成真实的手机号。登录钉钉的PC端,到群设置-机器人里复制Webhook地址备用。在控制面板页面中,点击“通知”选项。
2023-10-18 14:04:17
3590
4
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 基于springboot做了一个策略模式的demo(开箱即用)
使用springboot做了一个策略模式的demo下载工程GitHub - kevinmails/sprintboot-strategy-pattern-demo at masterContribute to kevinmails/sprintboot-strategy-pattern-demo development by creating an account on GitHub.https://github.com/kevinmails/sprintboot-strategy-pattern-de
2021-12-15 09:25:38
560
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 我去dubbo线程池又被打爆(打满)了java.util.concurrent.RejectedExecutionException: Thread pool is EXHAUSTED
最近线上系统经常告警dubbo线程池打满报错如下:172.28.152.53/Caused by: java.util.concurrent.RejectedExecutionException: Thread pool is EXHAUSTED! Thread Name: DubboServerHandler-172.28.149.131:20880, Pool Size: 500 (active: 500, core: 500, max: 500, largest: 500), Task: 7179
2021-12-07 13:04:35
1562
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 金融电商支付类工程项目下的三方,二方接口开发设计指南(拒绝踩坑)
以下指南,都是作为过来人,曾经踩过或者了解到身边的同事真实踩过的坑,希望对一些即将步入金融金融电商支付等相关行业,和刚刚踏入关行业的兄弟一些启示和帮助!1.金融系统对金额的处理用bigdecimal,并指定小数位对于有一些有金融相关经验的人会知道,在进行金额处理时,尽量不要用double,float 因为会精度丢失,可能导致计算错误,应该用bigdecimal,但这依然不能阻止你踩坑,因为...
2019-04-09 18:49:17
883
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Maven依赖分析,jar包冲突解决利器intellij idea插件Maven Helper强烈建议安装
还在为解决jar包依赖冲突痛苦??? 那就好好看看下面的文章吧!目前大多公司的java项目都以Maven项目为主,最近也通过Maven Helper解决了一些生产问题,在这里分享一下安装和基本使用方法!安装方法: File-Settings-Plugins点击“Browse repositories” 在弹出搜索框输入"maven helper" 点击“Install”,安装完成后...
2018-12-29 18:33:24
36035
1
原创 查看oracle ojdbc所支持的JDBC驱动版本
其实上文中对ojdbc所支持的JDBC驱动版本已经有说明了,不过,因为oracle的驱动包很多时间,都是在公司内部私服里上传维护的,上传的时候,可以又没有写清楚是版本,导致我们搞不清jdbc版本,这里教大家快速查看ojdbc所支持的JDBC驱动版本。这个时候注意,你本地安装的jdk版本,ojdbc11.jar 是基于jdk11编译的,就是说你本地安装的jdk版本至少要是jdk11。我们到根据jar包的坐标,本地仓库找到jar文件,执行 java -jar 就可以很清楚的看到所支持的JDBC驱动版本。
2024-07-09 14:55:57
795
原创 Linux/mac 查看端口占用进程
最终发现是查询权限不够,因为登陆的是普通用户,所以不是当前用户下的进程查询不到,而占用端口的进程是root用户启动的,所以一直查不到,重新执行以下,返回了端口占用进程。大家以后注意,如果要查所有用户的端口情况,可以使用sodo切到root权限,或者切到root用户等权限比较大的用户。但是查不到端口,结果为空,telnet 127.0.0.1 50051又是通的,找了几天也没找到端口被占情况。就用lsof命令查看了一下商品占情况。
2023-03-22 19:47:40
344
1
原创 java sftp下载文件报错 Caused by: com.jcraft.jsch.JSchException: session is down
最近线上有一个下载文件的报错:Caused by: com.jcraft.jsch.JSchException: session is down业务场景是我们使用jsch连接到三方提供的一个sftp服务器,每日定时下载所需的文件。 <dependency> <groupId>com.jcraft</groupId> <artifactId>jsch</artifactId> <versi
2021-07-05 18:17:18
4668
原创 通过python 批量导出wind系统中的基金日万份和七日年化
最近项目上有需求要导出wind系统中的数据,写了个python 脚本批量导出, 脚本如下:from WindPy import wimport pandas as pd"""wind路径:量化-API接口-代码生成器(GC) 生成python代码批量导出货币基金的日万份和七日年化"""w.start()print("是否已连接wind:", w.isconnected())fund_str = "000009.OF,000010.OF"fund_arr = fund_str
2021-01-25 18:47:41
2730
原创 当kafka分区不能再增加的情况下,使用多线程提升kafka消费能力(附源码)
正常情况下,kafka的消费线程数据是分区(patition)一对一,单个patition是kafka并行操作的最小单元,kafka只允许单个partition的数据被一个consumer线程消费,例如我们做20个分区,实际上就对应着20个消费线程,当我们做一些活动的时候,就会有发生消息量猛增,而我们的消费线程有限,处理消息的能力有可能跟不上,导致大量的消息堆积处理不完。这时我们可能就需求要优化,加大处理能力,多数人可能会想到增加分区,分区是可以增加,但是不可能一直无限向上增加,我们这里参用...
2020-09-24 14:44:51
3425
原创 java8 ThreadLocalRandom获取一个区间内的随机数,很实用
在java里,要取一个随机数方法也有很多,例如Math类,Random类,ThreadLocalRandom类,SecureRandom类,今天借用ThreadLocalRandom类使用java8的语法,,写一个获取区间内的随机数的工具类。大家要注意ThreadLocalRandom类生成的随机数是一个“伪随机数”,是可以被破译的,这种方式仅限于一些对随机数要求不高的场景,ThreadLocalRandom多线程环境下推荐使用,更为高效,用来补充(取代Random)另外随机数生成...
2020-06-29 11:46:13
2281
原创 Connection is not available, request timed out after 5000ms.总算解决了
org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLTransientConnectionException: XXPool - Connection is not available, request timed out after 5000ms.
2020-05-16 00:20:17
32518
14
原创 应用频繁的发生FULLGC怎么办,如何排查?
FULLGC的发生在应用里经常会有,怎么才算的上是频繁?我个人理解如果每天发生2次以上应该就算的上是频繁,FULLGC发生也会为我们的应用带来一些问题,比如会发生gc stw(stop the world),会停止所有的工作线程,如果gc时间很长的话,有些带有心跳的应用软件,会认为应用不在存活,做出一些错误的处理等。 这里给大家分享一下,FULLGC的一个协查的思...
2019-12-12 10:34:38
5036
原创 CSDN访问10w+记录一下
今天文章的访问达到了10w+,很是兴奋,从来没有想过,因为本身自己也不擅长写文章,还担心写的内容会误人子弟(如果文章有问题希望刷到的同学提出,多多指正)。 不太喜欢重复的东西,网上一搜,除了作者不一样,别的都一样,我只会写工作中遇到的问题,解决办法,解决思路以及工作中的一些总结,让还未踩到坑的同学避免踩坑。 更要感谢csdn这个知识共享平台!我在...
2019-11-26 18:12:26
597
原创 Linux awk命令原来可以干那么多事
这里假设读者还是有点Linux 基础(敲过一些linux 命令).haha...awk是一个强大的文本分析工具,生产中,我们也会经常用到,这里我就列举一下作为开发人员,常用的一些操作开发人员在开发过程中,其实很要在Linux环境下操作,更多的是上线后的一些分析协查,就比如我们经常会分析程序导出,下载的一些文件有没有问题,本文也是基于这么一个场景,列举一些常用操作举例中用到的文件我上传...
2019-08-30 14:26:32
719
原创 一次线程java.lang.OutOfMemoryError(OOM)协查后的思考
上周一同事找我协查一个线上OOM的问题,协查的过程这里就不讲了,跟我之前协过的一个OOM过程其实差不多,之前的协查参看这篇:通过mybatis源码,分析一次由mybatis使用不当导致的OutOfMemoryError的协查今天主要讲一下结果和对结果做一下总结:这次的OOM的发生主要由于,一个不常用的查询功能,做的全表查询,因为数据量太大,导致的堆内存溢出先来看一sql(列了一个相近的...
2019-08-19 13:12:12
377
2
原创 Linux(基于Ubuntu)下Docker容器的安装
Docker容器就不介绍了,今天主要是安装,安装,安装!咱们今天主要是基于官方的Guide来完成一次安装,参考:https://docs.docker.com/install/linux/docker-ce/ubuntu/#install-docker-ceDocker主有两个版本,Docker Community Edition (CE),Docker Enterprise...
2019-07-09 17:50:50
1169
1
原创 无意间发现我的一台云服用器中了矿机xmrig的毒,再续!!
接上无意间发现我的一台云服用器中了矿机xmrig的毒,续!!今天主要是跟大家同步一下昨天处理的结果,哈哈!截止到我发稿,没有看到矿机再运行!!!再分享一个禁用root 远程登录的方法(用其它用户su过去):$ sudo vi /etc/ssh/sshd_configFind PermitRootLogin and set to no:PermitRootLogin no...
2019-06-14 12:58:50
7241
12
原创 三方支付接口之异步代扣接口的正确开发方法(线上填坑的总结)
前几天的新坑,还热乎着呢,赶紧拿来给大家分享一下.我相信不认真看我的文章,你如果做这个功能,会有99%的挖坑的可能,哈哈!声明:我这里都是用一些简单流程,简单表等做一个设想,实际业务场景会比举例复杂很多!先列几个名词:表 t_order_pay 有个支付状态pay_state 有这么几个值I:init初始状态U:unknown 未知(处理中)状态S:success 成功...
2019-06-14 11:46:59
650
原创 无意间发现我的一台云服用器中了矿机xmrig的毒,续!!
接上 无意间发现我的一台云服用器中了矿机xmrig的毒,哎!!上次没根除接着来!看一下是不是设置了定时任务:这里要注意一下,我一开始 crontab的时候没有指定用户(我是用ubuntu用户登陆的),没有看到这个任务,以为没有问题,不指定用户列出的是当前用户的任务,编辑也是同样如此.果然,去下载了一脚本执行!打开看看就是你了! 这段脚本也比较简单好理解大概意思:清清本地...
2019-06-13 10:06:32
13407
6
原创 无意间发现我的一台云服用器中了矿机xmrig的毒,哎!!
矿机自己平时用来做测试的一台机器,所以也没做什么防护,今天上去无意见看到有一个xmrig进程cpu 99%,Xmrig是啥?原来是矿机,还用的root干的,我花的银子买的机器,天天给人挖矿, 好不爽啊!!!看一下在哪里/proc/27336/exe都跑一个月了。。。。kill -9 27336 先灭了再说!吓得我赶紧修改root密码还没...
2019-06-11 20:18:59
33580
5
原创 oracle sql in 超过1000个参数报错(ORA-01795: 列表中的最大表达式数为 1000)解决办法之一
在oracle数据库中,sql使用in时,如果in的能数超过1000就会报出"ORA-01795:列表中的最大表达式数为1000/ORA-01795: maximum number of expressions in a list is 1000"的错误,这个也是生产中大家常踩的坑之一! 在测试环境下,因为数据量小,测试时用例没有覆盖到。有些场景,大家在评估的时...
2019-04-25 12:30:40
11029
4
原创 java微基准测试JMH引入报错RuntimeException: ERROR: Unable to find the resource: /META-INF/BenchmarkList
在我引用JMH后,运行的时候报了一个如下的错误:/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home/bin/java "-javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=61638:/Applications/IntelliJ IDE...
2019-04-01 11:16:11
4741
1
原创 使用java8的java.util.Base64报“java.lang.IllegalArgumentException: Illegal base64 character d”的问题
参考原创:https://blog.csdn.net/java_4_ever/article/details/80978089这里要再次感谢一下原创,本人也找到了解决问题的办法,只是没搞明白原因是什么,学习上面的文章才得以明白。是生产的上线后发现的问题:java.lang.IllegalArgumentException: Illegal base64 character d ...
2019-02-22 15:26:33
71010
10
原创 java8中获取两个时间的时间差
工作中我们经常会想查看一个方法执行的性能,就会通过在方法入口和出口处记算一下时间差值,像下面代码这样: long start = System.currentTimeMillis(); //business code Thread.sleep(1000); long over = System.currentTimeMilli...
2019-02-20 14:16:14
30603
原创 java.util.List中subList方法让我们栽了一个坑然后我们写了一个填坑方法
这是前段时间线上发现的一个问题,来自于一个分批处理的分页需求,需求里要对集合里的数据分批次处理,于是有了下面代码,我还原生产的demo:public class SubListTest { public static void main(String[] args) {// List<String> srcList = Arrays.asList("a...
2019-01-24 14:54:44
648
原创 通过mybatis源码,分析一次由mybatis使用不当导致的OutOfMemoryError的协查
说是mybatis使用不当,其实也不准确,应该说是不了解mybatis的一些工作机制,下文带着大家一起分析一下mybatis源码,了解一下这次线上OOM原因. 首先了解一下是什么OOM? OOM 是Out Of Memory 的简写,中文翻译:内存溢出. 百科上的说:内存溢出(out of memory)通俗理解就是内存不够,通常在运行大型软件或游戏时,软件或游戏所需要...
2018-12-13 12:41:59
3034
原创 intellij idea 开发效率增强必设配置(超实用插件)
首先想说,如果你是elipse 转到intellij idea,我非常的反对将快捷键设置为elipse快捷键,否则还是换回elipse吧!这里原因我觉得主要有两个:1).idea的快捷键也是这个工具的一部分精华,非常的丰富好用2).如果团队里有人用elipse快捷键,在相互指导开发,调试代码的时候,你就会发,就像一个只会说中文,一个只会说英语 ,“交流”起来很不方便,因为你的idea只...
2018-12-02 12:00:14
3158
原创 java httpclinet请求https地址报java.io.IOException: Invalid keystore format 解决办法
=这又是一次生产问题协查,痛苦的协查。起因是合作方调用地址变更,变更后的地址是https协议地址,对方新增了一个.jks的证书库要加载代码写完后,一上线发https请求就报错,因为合作方封装了一个sdk的包,报错堆栈信息没有向上返回,是返回了一个“加密失败”,哎。。。。这里只能把ssl debug打开来,打开方法不太清楚的参考另一篇文章 java ssl调试打开ssl debug日志打...
2018-11-28 20:01:03
14122
1
原创 java ssl调试打开ssl debug日志
添加jvm 参数-Djavax.net.debug=ssl或者-Djavax.net.debug=allall turn on all debuggingssl turn on ssl debuggingThe following can be used with ssl: record enable per-...
2018-11-27 09:29:33
11574
5
原创 com.alibaba.dubbo.remoting.RemotingException: Caused by: java.nio.channels.ClosedChannelException
生产遇到的一个异常如下:com.alibaba.dubbo.remoting.RemotingException: Failed to send message Response [id=0, version=2.0.0, status=20, event=false, error=null, result=RpcResult [result=Fruit(name=null, color=o...
2018-10-13 23:36:54
8044
原创 java8 通过18位身份证号提取用户信息(年龄,生日,姓别)
工作中经常用到的通过身份证号(18位)提取用户信息(年龄,生日,姓别),分享给大家:先做一个javabean 存用户信息:package com;import lombok.*;import java.time.LocalDate;/** * @author kevin * Date 2018/9/5 * Time 9:34 */@Builder@Datapub...
2018-09-07 17:03:31
11456
原创 java8生成可自定义长度的随机数
刚好工作中用到,用java8的语法写了一个获取随机数的工具分享给大家:源代码:https://github.com/kevinmails/javase/blob/master/src/main/java/com/test/java8/RandomUtil.javapackage com.test.java8;import java.util.Random;import java.u...
2018-09-02 15:16:28
9486
原创 javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake 痛苦解决之旅
上周另外一项目组的同事找到我说,遇到一个问题很棘手两天了还没解决掉,报错如下:javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java...
2018-08-28 13:17:33
123019
44
原创 java8 httpclient NameValuePair转换14行代码一行搞定!
工作中,我们常常会通过httpclient调用一些三方提供的api, 进行参数传递的时候会用NameValuePair[ ]于是我们同事写了一个方法封装一下 NameValuePair,将map中用 参数key ,参数值value,做一个转换如下:public static NameValuePair[] convertMap2NameValuePairs(Map<Str...
2018-08-24 11:33:39
3661
1
dubbo_demo-maven
2019-04-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人