背景 最近七牛云 CDN 的流量有点吃不消了,后台看了下统计,发现有好多图片文件特别大,最大的单个文件能到 10M 多 。所以就想做一下图片瘦身处理,官方自带的瘦身试了下效果一般,所以就不如自动动手了。 处理方式
阅读全文分类: 开发
FRP 更改多 Token 支持
简介 之前一直用 Ngrok,但 Ngrok 有比较严重的内存泄露问题,经常无故退出。所以最近更改到了 frp。 frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp, http, https 协议。 由于 frp 默认只支持一个
阅读全文Java WebDriver PhantomJS 启动异常
直接看异常吧: org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. Build info:
阅读全文关于 MetaSpace 及 FastJSON 导致的 OOM
在 JDK8 之前,虚拟机内存主要分为堆和非堆两部分,堆中划分新生代老生代,非堆中包含所有非对象信息和运行时信息,其中有一块叫 PermGen,用以保存字节码等类信息。在 JDK8 中取消了这块内存,并添加了 MetaSpace 替代所有功能。
阅读全文Lucene7.3.1 依赖 spatial3d 建立 GEO 索引
Lucene是一款高性能的、可扩展的信息检索(IR)工具库。信息检索是指文档搜索、文档内信息搜索或者文档相关的元数据搜索等操作。
阅读全文基于 JavaCC 生成权限校验语法表达式解析器
JavaCC 是 Java 语言范围内最受欢迎的语法分析生成器,可以读取特定语法写好的范式并把它转换成可以识别且匹配该语法的 JAVA 程序,除了 javacc 也有配套的 JJTree 生成语法树,JJDoc 生成 BNF 范式文档等。
阅读全文基于 PEG.js 生成权限校验语法表达式解析器
背景 用户有一系列权限,例如 Article.List,User.Edit 等,这时候如果需要进行一个带嵌套的动态权限查询就会很麻烦,如果想做成可配置的就需要语法解析,例如表达式 User.Edit or User.Modify or (User.List and Ad
阅读全文状态机在开发中的应用
简介 我们开发过程中会有各种不同状态,围绕这些状态之间的转换方式会有很多业务逻辑,依赖这些状态又会有更多的业务逻辑,如果这些逻辑代码不使用状态模式进行归类统一,会以各种难以理解和难以修改的方式存在各个
阅读全文WordPress 悬挂备案号
作为一个良好市民,备案号该悬挂还是得悬挂的,新版本的 WordPress 对备案号也提供了支持,但仅限官方主题。 然而大家肯定还是使用第三方主题居多吧,这时候就需要动手写代码修改了。 可以直接修改当前主题下的 foot
阅读全文基于 ByteBuddy 运行时动态修改字节码
简介 Byte Buddy 是一个字节码生成与操作库。它无需编译器,能够在Java程序运行时创建与修改 class 文件。 目标 已有类文件: public static class Log { public static void log(String a) { System.out.println(“L
阅读全文