Java 中的同步方法

说到 java 中的同步,必然少不了耳熟能详的synchronizedReentrantLock,以及可能用过但不怎么常见的Atomicvolatile,本篇即简单介绍下他们的区别和使用场景。

阅读全文

Java 中集合和泛型最佳实践

最近看 Java,读到一篇比较好的英文文章,特翻译了下记录下来。原文链接在这里

集合类和泛型是 Java 中比较常用的技术,也是面试时经常问到的点。本篇文章向大家分享的,是一个资深 Java 开发者多年的实战经验。通过本篇文章,你会了解怎么高效而优雅的使用集合、泛型,而不是仅仅停留在 “just work”。

阅读全文

我的这 10 年

这篇文字在草稿箱里已经存了几个月了,趁着周末加班改完bug,还是做个了结吧。

现在是2018年6月,新闻前两天还一直在报道今年高考的消息,今年全国高考人970万。回想起我参加高考,已经过去整整10年了,现在看到视频里那些进入考场的莘莘学子,感慨万分。看了下历年的高考人数变化,没想到,我高考的那两年,居然是高考人数的最高峰。像是过关游戏中,小手一抖,选择了 hard 模式。高考的人数变化,也一定程度上,反应了国家人口的变化,现在,越来越多的人相信,在未来半个世纪,中国劳动力人口在呈逐年下降趋势。目前,国家也开放了二胎政策,鼓励多生。而现在抚养孩子的压力,让大多数家庭都打消了二胎的想法,不可谓不讽刺。

阅读全文

关于 zookeeper 的一些原理

分布式系统中,协调和管理服务是一个复杂的过程,数据的一致性也是一个不可避免的问题,而 zookeeper 是一个解决分布式集群应用中数据一致性问题的有效工具,它提供基于类似于文件系统的目录节点树方式的数据存储,但是 zookeeper 并不是用来专门存储数据,它的主要作用是用来维护和监控你存储的数据的状态变化。通过监控这些数据状态的变化,从而可以达到基于数据的集群管理。

阅读全文

数学上的一些经典片段

最近看的几本书里,都有提到一些数学方面的知识,有些符号和公式,放在现在,可能觉得没什么,一个小学生都能看懂,但却鲜有人知道,普及这些理论,需要几代人的不懈努力和探索。有些公式和推导,都堪称数学史上的经典,这里摘取一些片段,体会下数学的美妙,也让我们看看人类的智慧是无穷的

阅读全文

RabbitMQ 的简单使用

在高性能,高可用,解耦的系统中,消息队列 ( Message Queue) 组件是少不了的。现在市面是有各种流行的MQ框架,比如 kafka,rabbitmq,roketmq,zeromq等。各个公司为了适应自己业务的发展,有的会自己造轮子,而有的则在开源消息队里的基础上,做了进一步的改造和优化。本文使用 rabbitmq,作为消息队列的入门使用。

阅读全文

CSDN 的困境

前两天在微博上,看到CSDN的创始人发了这样一条微博,内容如下

阅读全文

关于 vps 和 shadowsocks 梯子

近几年国内互联网“整风运动”愈演愈烈,各种翻墙服务都相继倒下,走丢的国外网站和服务也一个接一个,好在公司可以随意访问google,而回到家里,就没法用了,因此,为了科学上网,迫切需要有新的梯子,去看看外面的世界。俗话说,授人以鱼不如授人以渔,与其找梯子,不如自己建梯子。国外的vps给我们提供了一个理想的建梯子环境。本文使用亚马逊的 EC2 vps,使用著名的 shadowsocks 来自建一个梯子。

阅读全文

本博客的一些插件和使用方法

用hexo写博客已经有一段时间了,这里把本博客的一些觉得有意思的插件和优化整理出来,方便新手配置和学习。

阅读全文

用微信公众号记账

之前申请了个微信公众号,完成了一些小功能后,就一直没怎么玩了,由于今年下半年开始,和女票住一起了,开销骤增,于是决定开始记录下每田的开支情况,统计我们的消费习惯。

阅读全文