主页

centos7 修改limits限制

一、前言 ​ 最近在做压力测试,看看后面接口能跑到多少的qps,结果跑了一下下,接口就开始报错了,经过排查发现,后端是正常的,是nginx 打开文件数过多导致的nginx的错误,于是乎,就改呗.改着改着服务器就被改炸了. 二、修改limits 查看当前open files数量 ulimit -a 测试服务最高能到多少(当然这个数字并不是越大越好) 图中可以看到最大值在1000000左右.一定不要试图超过这个值,不然ssh会连接不上服务器的,哪怕物理终端都会登陆不上去,切记! 修改配置使之永久生效.打开vim /etc/security/limits.conf,在文件末尾添加以下两行参数. ...

阅读更多

BufferedInputStream与InputStream的区别

一、前言 最近在项目遇到一个BufferedInputStream和InputStream混用的问题,导致InputStream阻塞线程,于是为了解决问题,打算剥开BufferedInputStream的buffer观察内在的本质,凭啥都说BufferedInputStream比InputStream快? 二、事故线程 事故是发生在,抄袭的jsch下载文件的demo里,为了偷懒开发人员直接把demo里面的代码扒了下了,不过好在一点是开发人员觉得InputStream比较慢,换成了BufferedInputStream.这点还是比较好的,至少有点点常识.以下为部分代码. 读取文件代码 ChannelExec channel = null; O...

阅读更多

暴力破解aspose.excel.19.7

一、前言 之前发布了一篇破解aspose.word破解文章,其实是生活所迫买不起授权,不得已才会去破解.emmm,在写一篇破解aspose.excel的文章吧,平衡一下. 二、分析 由于aspose产品系列是没有做联网校验的,所以破解起来比较容易,只要找到核心逻辑,用javassist重新生成一下类即可. //以下为忽略其他代码核心代码 public class License { private String[] b; private int c; private String d; private String e; private String f; private String g; static License ...

阅读更多

jfinal undertow前后端分离配置

一、前言 在做项目的时候,本公司这边是使用的前后端分离.部署的时候使用nginx代理前端.但遇到一个比较特殊情况,改服务器上只能装java 和 数据库.哦豁..于是就想着怎么在jfinal 这边搞个前后端分离来解决当前的问题. 二、jfinal解决方案 增加前端路由 public class FrontController extends Controller { public void index(){ render("index.html"); } } 这个代码很简单,只要返回index.html就可以了. 增加Handler public class Ap...

阅读更多

brew换国内源,速度起飞

一、前言 最近大面积封杀梯子,导致国内开发者用户,更新软件十分困难.比如说我,brew update 一下都要等很久.更别说通过brew更新软件了. 二、换国内源 替换为中科大源 # 替换brew.git: cd "$(brew --repo)" git remote set-url origin https://mirrors.ustc.edu.cn/brew.git # 替换homebrew-core.git: cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git ...

阅读更多

pgsql 数据库消息同步

一、前言 最近遇到一个需求,当数据库中的数据发生改变时,要进行业务同步到统计表中去,最开始是想用触发器进行实现,奈何没有数据库大牛,触发器写起来有点麻烦.调研了一下发现pgsql有类似mysql的binlog的消息机制.那么就可以嘿嘿嘿了. 二、配置 要实现消息同步需要使用pgsql的replication slots机制,在postgresql.conf配置文件中设置 wal_level = logical max_wal_senders=1 max_replication_slots=1 这样就打开了pgsql的逻辑复制机制.还需要配置一个wal插件,把wal日志转成json字符串,方便程序解析.这里使用的插件是wal2json. wal2json 配置 ...

阅读更多

使用jib打包maven错误

一、问题分析 从上面报错的信息来看,看不出啥问题,我们在maven命令后面加上-x参数看看具体的问题 看到上面的信息是连接某个地址然后超时了.emmmm,会不会是被墙了???在maven上加上代理试试看 二、maven配置http代理 <proxies> <proxy> <id>example-proxy</id> <active>true</active> <protocol>http</protocol> <host>proxy.example.com</host> <port...

阅读更多

暴力破解aspose.word.19.3

一、前言 最近遇到一个需求根据word模板导出word文档,调研了一圈发现aspose比较好用,但缺点就是aspose需要收费.如果不付费就会出现水印.于是按照免费即是最好的,最好有破解的想法,尝试了一下如果绕过aspose的license验证. 二、分析 License aposeLic = new License(); FileInputStream stream = new FileInputStream("license.xml");//许可xml aposeLic.setLicense(stream); boolean licensed = aposeLic.isLicensed(); Syste...

阅读更多