服务化体系之-兼容性与版本号

家大业大之后,服务的版本和兼容性就是个让人不得不正视的问题。最近,路上有个说法,既然都是微服务了,那不同的版本可以认为是两个完全不一样的微服务,没必要再保留版本号了。 这篇文章按着唯品会的实战经历来探讨一下。 [...] (阅读全文……)
Posted in 技术 | Tagged | 3 Comments

服务化体系之-限流

临时客串一下产品经理,尝试用最少的字,把“限流”这简单二字所展开的种种需求说清楚。
下篇,再来讨论那些漏桶算法,Guava Rate Limiter和唯品会服务化框架的实现。 [...] (阅读全文……)
Posted in 技术 | Tagged | 4 Comments

服务化框架-分布式Unique ID的生成方法一览

分布式的Unique ID的用途如此广泛,从业务对象Id到日志的TraceId,本文总结了林林总总的各种生成算法。 昨天有同事问起这个,又修订了一版。 [...] (阅读全文……)
Posted in 技术 | 14 Comments

一份平民化的应用性能优化检查列表(完整篇)

作为一份比较初级的检查表,高大上的话不多说了,直接开始。 [...] (阅读全文……)
Posted in 技术 | 11 Comments

Java性能优化指南1.8版,及唯品会的实战

来了唯品会一年多,不少时间花在与服务化框架、业务应用的性能的缠斗上。

前几天正好趁着中生代社区的十月十城技术沙龙,把脑海中关于性能优化的记忆全部理了一遍....讲完回家,又再理了一遍,终于成为现在的这份PPT。 [...] (阅读全文……)
Posted in 技术 | Tagged | 23 Comments

Java后端,应该日常翻看的中文技术网站

你还在学习吗? [...] (阅读全文……)
Posted in 技术 | 14 Comments

我的Java后端书架 (2016年暖冬版)

本书架主要针对Java后端开发与架构师。

更新记录:4.0版把第五部份-具体技术的书整块拿掉了。《TCP/IP详解 卷1:协议》出到了第二版,增加《SRE:Google运维解密》,《Java8 实战》。 [...] (阅读全文……)
Posted in 技术 | 23 Comments

SecureRandom的江湖偏方与真实效果

SecureRandom,我们一般都知道江湖偏方 -Djava.security=file:/dev/./urandom,但往往不求甚解,一年前,在那个有点暗的办公室里,我就是这么做的。

一年后,又有同学说JDK8下Thread Dump出很多SecureRandom的BLOCKING。于是怒翻JDK代码,并配合JMH写的测试,总结出这么一篇。 [...] (阅读全文……)
Posted in 技术 | 6 Comments

Btrace入门到熟练小工完全指南

BTrace是神器,每一个需要每天解决线上问题,但完全不用BTrace的Java工程师,都是可疑的。
在网上搜索Btrace能出来不少文章,都有点旧了,而且不够详细,于是决定,重新写一份,包含自己踩过的坑。 [...] (阅读全文……)
Posted in 技术 | Tagged | 9 Comments

String.intern() 祛魅

String.intern(),写应用的同学不知道也没什么损失。但知道的同学,如果只觉得它很省内存,用==比较字符串很酷,或者期待JDK会做什么神奇的事情,然后恨不得所有地方都用上String.intern(),那很可能会误用,所以把上周在群里的讨论整理成此文。

在社会科学中,祛魅(Disenchantment)是指在现代社会中消去神秘主义(魅惑力)的表面并把文化合理化。这里乱用一下。 [...] (阅读全文……)
Posted in 技术 | 6 Comments