Deadline

Minimalist coder

Java servlet 对于 POST 数据处理的一些细节

最近和其他项目组合作,需要调试 http 接口签名。我先简单介绍下他们的验签规则。 get 方法:直接将 url 中的参数串取出来(queryString)。再将 sign 字段和值截掉。将剩下的字符串 MD5 一次,再加上约定的 key,再次 MD5 得到最终的签名,和 sign 值比对。 举个例子: https://xxxx.com/xx?a=1&b=2&sign=x...

一次线上 OutOfMemoryError 排查

最近线上服务器经常出现 java.lang.OutOfMemoryError: Java heap space 错误。 这篇文章就记录下排查错误的过程。 拿到 HeapDump 文件 JVM 参数 -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/dumps -XX:+HeapDumpOnOutOfMemoryError 该...

突发性耳聋

周二晚上右耳突然耳鸣了,而且听声音很奇怪的感觉,两只耳朵听到的声音不太一样。以为自己前几天挖耳朵可能挖坏了还是怎样,发炎了之类的。打算睡一觉看看第二天好不好。 结果第二天症状依旧,耳鸣似乎有更严重的迹象,中午去吃饭,吃饭的人很多周围声音嘈杂,感觉自己在坐飞机上似的,轰隆轰隆响!下午果断请假去医院看看。 然后去了附近一个三甲医院,挂号排队,看医生。医生看了下我的耳朵说,外面看是好的,然后让...

阿里 RPC 框架 dubbo 中的那些坑

公司现在的项目用了 58 内部的一个 RPC 框架,一直有个接收数据超时的问题,由于不是开源的(号称开源,结果只是换了个名字,然后开源了第一个版本的代码而已,后面也没有人维护和更新),所以很难排查问题。反正从我进公司开始就一直被这个问题折腾,因为这个问题还会导致很多的连锁 Bug,简直不要太坑。 之后决定使用阿里 dubbo 框架替换掉现在使用的,dubbo 总体来说还是不错,然而其中也碰...

Redis 实现排行榜功能

排行榜是个非常常见的功能,很多 app 里面都有类似的功能,自己正好最近做了这样一个功能,记录一下。 Redis 有序集合 Redis 有序集合和集合一样也是 String 类型元素的集合,且不允许重复的成员。 不同的是每个元素都会关联一个 double 类型的分数。Redis 正是通过分数来为集合中的成员进行从小到大的排序。 有序集合的成员是唯一的,但分数(score)却可以重复。 集...

聊聊最近找工作

过年前直接和 boss 摊牌,说想换个环境。因为就这样一个人干下去,就只能自己瞎折腾了,而且用户也少,要实现一个功能咋写都行,很难有动力去折腾。所以,还是想去一个比较成熟的环境,有成熟的团队。还有就是公司目前赚不到钱,勉强收支平衡,所以薪水方面基本在很长一段时间内是不会动了。虽然我还是很看好公司前景,不过我还是更喜欢现实点。当然还有其他种种原因啦。 二月底就开始投了些简历,最终去面了四家公...

微信 JS-SDK 添加卡券

最近帮朋友做了一个添加卡券的功能,朋友想批量添加卡券,就是一次领好几张一样的券。 做完发现还蛮多问题的,最后一直都是签名不对,但是把签名放到验证工具里检查又是对的。 这篇文章把添加卡券要注意的问题都写出来,也许有人能用上呢。 api_ticket 和 jsapi_ticket 不是一个东西 用于卡券接口签名的 api_ticket 与通过 config 接口注入权限验证配置使用的 jsap...

教你配置使用阿里云 Maven 库,体验秒下 jar 包的快感

鉴于国内的网络环境,从默认 Maven 库下载 jar 包是非常的痛苦。 速度慢就不说了,还经常是下不下来,然后一运行就是各种 ClassNotFoundException,然后你得找到残留文件删掉重新下,或者下载到本地然后通过命令添加到本地库中。 当然土豪公司自建仓库的就另当别论啦。 今天就给大家安利下阿里云的 Maven 库:http://maven.aliyun.com。秒下 jar...

LaLaLand

我很庆幸去电影院看了这部电影,因为是真的很好看。前两天看过的同事和朋友都说不好看,不喜欢这类电影,像是音乐剧。我对音乐剧也无感,印象中就那部《悲惨世界》还不错,女神安妮海瑟薇出演的女主,不过这类电影也看得少。 整部电影一直都是很轻快的节奏,尤其是载歌载舞的时候,我一直在笑,因为让我觉得很高兴和快乐。 落魄的两人在命运的安排下坠入爱河,而后互相鼓励、扶持,最终都实现了自己的梦想。然而有所得...

《深入理解 Java 虚拟机》HotSpot 虚拟机对象探秘

本系列文章均摘自《深入理解 Java 虚拟机》第二版,略有删减、概括,主要是为了精简篇幅,方便阅读和以后查阅。推荐购买正版书籍,阅读完整内容。 本节将探讨 HotSpot 虚拟机在 Java 堆中对象分配、布局和访问的全过程。 2.3.1 对象的创建 JVM 遇到一条 new 指令时,会先检查这个指令的参数是否能在常量池中定位到一个类的符号引用,然后检查这个符号引用代表的类是否已被加载、...