这是Ketan Parmar发表的Microservice Architecture - A Quick Guide。
软件架构模式

本文是我在阅读O'Reilly免费的电子书 Software Architecture Patterns过程中做的笔记。
首先这本书非常新,2015年3月30号订正后发布。其次将目前流行的几种架构详细进行了剖析和比较,除了传统的N层架构外,其它架构相当的前沿。并且,这篇小书连带封面才55页,短小精悍,值得一读。这本书的作者是 Mark Richards,有30多年行业经验,19年软件集成,企业级架构的经验,大部分是Java平台,也出版了多本书和论文。
如果你没有时间去阅读这本书,那么不妨看一下本篇文章。 我在笔记中将书中的主要知识点都记录下来。
JVM 垃圾回收 Minor gc vs Major gc vs Full gc
原文: Minor GC vs Major GC vs Full GC
在Plumbr进行GC暂停检测功能的工作时, 我不得不阅读大量与此相关的文章,书籍和报告。在研究过程中, 对于Minor, Major和Full GC时间我一再的困惑,这也就导致本博文的产生, 希望我能理清我的一些困惑。
本文期望读者熟悉JVM内建的垃圾回收的基本原理。JVM的内存堆对 Eden, Survivor 和 Tenured/Old区划分, 代假设和不同的GC算法不在本文的讨论之列。

Java 异步编程最佳实践
最近异步编程非常流行, 主要是它能够在多核系统上提高吞吐率。异步编程是一种编程方式,可以提高对UI的快速响应。 Java中的异步编程模型提供了一致性的编程模型, 可以用来在程序中支持异步。 本文讨论了在使用Java执行异步操作应该遵循的最佳实践。
Kafka 内幕:源代码High level分析
本文主要介绍了Kafka High level的代码架构和主要的类。
Spark: 大数据领域的新贵
现在谈起大数据几乎等价于谈论Hadoop及其它的生态圈产品。但是现在一个下一代的计算框架已经长大,而且声名显赫。那就是Spark。你或许已经听说过它以及它的诸多好处。
自从发布之日起,Hadoop就被认为是Google大数据工具的等价实现。它帮助很多公司处理先前不可想象的大数据。围绕着它的两个主要部件(HDFS,分布式一致性的文件系统,和MapReduce, 分布式的计算框架), 一堆相关的工具涌现, 补充并提高它的功能。
使用Scala开发Kafka应用
Kafka官方提供了Producer和Consumer的例子。 尽管Kafka是由Scala开发的,但是却没有提供使用Scala编写Producer和Consumer的例子。
本文介绍了使用Scala开发producer和consumer的例子。
项目代码可以在github上浏览下载: kafka-example-in-scala 。
Kafka实践:通过8个case学习Kafka的功能
Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。
Apache Kafka与传统消息系统相比,有以下不同:
- 它被设计为一个分布式系统,易于向外扩展;
- 它同时为发布和订阅提供高吞吐量;
- 它支持多订阅者,当失败时能自动平衡消费者;
- 它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序。
我们将通过几个case学习Kafka的功能。
Kafka 配置参数
Kafka为broker,producer和consumer提供了很多的配置参数。 了解并理解这些配置参数对于我们使用kafka是非常重要的。
本文列出了一些重要的配置参数。
官方的文档 Configuration比较老了,很多参数有所变动, 有些名字也有所改变。我在整理的过程中根据0.8.2的代码也做了修正。
30个你必须熟记的CSS选择器
英语原文: The 30 CSS Selectors you Must Memorize
中文翻译 by Yimin Zhou: 30个你必须熟记的CSS选择器
另外一个关于CSS slector的资源是: MDN CSS Selectors
你学会了基本的id,class类选择器和descendant后代选择器,然后就觉得完事了吗?如果这样,你就会错过许多灵活运用CSS的机会。虽然本文提到的许多选择器都属于CSS3,并且只能在现代的浏览器中使用,但学会这些是大有好处的。
