论语 <先进>

子路、曾皙、冉有、公西华侍坐。子曰:“以吾一日长乎尔,毋吾以也。居则曰:“不吾知也!’如或知尔,则何以哉?”子路率尔而对曰:“千乘之国,摄乎大国之间,加之以师旅,因之以饥馑;由也为之,比及三年,可使有勇,且知方也。”夫子哂之。“求!尔何如?”对曰:“方六七十,如五六十,求也为之,比及三年,可使足民。如其礼乐,以俟君子。”“赤!尔何如?”对曰:“非曰能之,愿学焉。宗庙之事,如会同,端章甫,愿为小相焉。”“点!尔何如?”鼓瑟希,铿尔,舍瑟而作。对曰:“异乎三子者之撰。”子曰:“何伤乎?亦各言其志也。”曰:“莫春者,春服既成。冠者五六人,童子六七人,浴乎沂,风乎舞雩,咏而归。”夫子喟然叹曰:“吾与点也!”三子者出,曾皙后。曾皙曰:“夫三子者之言何如?”子曰:“亦各言其志也已矣。”曰:“夫子何哂由也?”曰:“为国以礼,其言不让,是故哂之。”“唯求则非邦也与?”“安见方六七十如五六十而非邦也者?”“唯赤则非邦也与?”“宗庙会同,非诸侯而何?赤也为之小,孰能为之大?”

继续阅读“论语 < 先进>”

岳阳楼记

范仲淹 北宋

庆历四年春,滕子京谪守巴陵郡。越明年,政通人和,百废具兴,乃重修岳阳楼,增其旧制,刻唐贤今人诗赋于其上;属予作文以记之。

予观夫巴陵胜状,在洞庭一湖。衔远山,吞长江,浩浩汤汤,横无际涯;朝晖夕阴,气象万千;此则岳阳楼之大观也,前人之述备矣。然则北通巫峡,南极潇湘,迁客骚人,多会于此,览物之情,得无异乎?

若夫霪雨霏霏,连月不开;阴风怒号,浊浪排空;日星隐曜,山岳潜形;商旅不行,樯倾楫摧;薄暮冥冥,虎啸猿啼。登斯楼也,则有去国怀乡,忧谗畏讥,满目萧然,感极而悲者矣。

至若春和景明,波澜不惊,上下天光,一碧万顷;沙鸥翔集,锦鳞游泳,岸芷汀兰,郁郁青青。而或长烟一空,皓月千里,浮光跃金,静影沉璧,渔歌互答,此乐何极。登斯楼也,则有心旷神怡,宠辱皆忘,把酒临风,其喜洋洋者矣。

嗟夫!予尝求古仁人之心,或异二者之为,何哉?不以物喜,不以己悲。居庙堂之高,则忧其民;处江湖之远,则忧其君。是进亦忧,退亦忧;然则何时而乐耶?其必曰:“先天下之忧而忧,后天下之乐而乐”欤!噫!微斯人,吾谁与归?

时六年九月十五日。

Joel 谈软件

Shlemiel得到一个在路上涂油漆的工作,他要漆在路中间的间断分隔线。第一天他拿了一罐油漆去漆好了300码的路。“做得真好!”他的老板说“你手脚真快啊!”然后就给他一个铜板。
第二天Shlemiel只漆了150码。“这样啊,没有昨天好,不过也还是很快。150码也很了不起。”也给他一个铜板。
第三天Shlemiel只漆了30码。“只有30码而已!”老板就哇哇大叫了。“这实在是无法接受!第一天你漆了十倍的长度耶!究竟怎么回事啊?”
“我也没办法啊,”Shlemiel说“我每隔一天就离油漆罐愈来愈远啊!”

Developer Weekly 11

About A community-maintained Python framework for creating mathematical animations.

Everything you need to know about Binary Search algorithm

C++ Parallel Computing and Asynchronous Networking Engine

visualising data structures and algorithms through animation

ES 学习

新型列式存储格式 Parquet 详解

Flink DataSet API编程指南

Java中对象占用内存大小计算

A High Performance Network ( TCP/IP ) Library

TETRIS-OS: An operating system that only plays Tetris.

Flink 博客

Flink源码解析-TTL

JVM 内存配置参数

一个重要的概念就是我们常常所说的设置jvm的内存参数大多关注的是堆内存的大小。
简单理解成这样:堆内存 = Old + Eden + S0 + S1 ;年轻的 = Eden(新生代) + S0 + S1 。

栈内存大小相关设置
-Xss1024k
意义: 设置线程栈占用内存大小。
默认值:不同的操作系统平台,其默认值不同。

堆内存大小相关设置

-Xms512m
意义: 设置堆内存初始值大小。
默认值:如果未设置,初始值将是老年代和年轻代分配制内存之和。

-Xmx1024m
意义: 设置堆内存最大值。
默认值:不同的操作系统平台,其默认值不同, 具体请查看官网 或者 查看讨论 How is the default Java heap size determined?
年轻代内存大小相关设置

-Xmn512m
意义: 设置新生代的初始值及最大值。
默认值:堆内存的1/4(这里要记住不是最大堆内存,还是已经分配的堆内存的1/4)。

-XX:NewSize=512m
意义:设置新生代的初始值。

-XX:MaxNewSize=512m
意义:设置新生代的最大值。

比率方式设置

-XX:NewRatio=8
意义:设置老年代和年轻代的比例。比如:-XX:NewRatio=8 表示老年代内存:年轻代内存=8:1 => 老年代占堆内存的8/9,年轻代占堆内存的1/9。
默认值:2

-XX:SurvivorRatio=32
意义:设置新生代和存活区的比例(这里需要注意的是存活区指的是其中一个)。比如:-XX:SurvivorRatio=8 表示存活区:新生代=1:8 => 新生代占年轻代的8/10,每个存活区各占年轻代的1/10。
默认值:8

-XX:MinHeapFreeRatio=40
意义:GC后,如果发现空闲堆内存占到整个预估上限值的40%,则增大上限值。
默认值:40

-XX:MaxHeapFreeRatio=70
意义:GC后,如果发现空闲堆内存占到整个预估上限值的70%,则收缩预估上限值。
默认值:70

Meta大小相关设置

-XX:MetaspaceSize=128m
意义:初始元空间大小,达到该值就会触发垃圾收集进行类型卸载,同时GC会对该值进行调整:如果释放了大量的空间,就适当降低该值;如果释放了很少的空间,那么在不超过MaxMetaspaceSize时,适当提高该值。
默认值:依赖平台

-XX:MaxMetaspaceSize=256m
意义:设置元空间的最大值,默认是没有上限的,也就是说你的系统内存上限是多少它就是多少
默认值:默认没有上限,在技术上,Metaspace的尺寸可以增长到交换空间

参考链接

Java HotSpot VM Options

Java Platform, Standard Edition Tools Reference

Facebook 小红书

2012年,Facebook 发行股票上市,每个员工收到了一本小红书。

最后一页写着这样一段话:

如果我们自己不创造能够杀死 Facebook 的东西,其他人将会这样做。……互联网不是一个友善的地方。那些不重要的东西甚至都没有机会留下遗迹。它们消失得无影无踪。

曹刿论战

十年春,齐师伐我,公将战,曹刿请见。其乡人曰:“肉食者谋之,又何间焉?”刿曰:“肉食者鄙,未能远谋。”乃入见,问:“何以战。”公曰:“衣食所安,弗敢专也,必以分人。”对曰:“小惠未遍,民弗从也。”公曰:“牺牲玉帛,弗敢加也,必以信。”对曰:“小信未孚,神弗福也。”公曰:“小大之狱,虽不能察,必以情。”对曰:“忠之属也,可以一战。战则请从。”
公与之乘,战于长勺。公将鼓之。刿曰:“未可。”齐人三鼓,刿曰:“可矣。”齐师败绩。公将驰之。刿曰:“未可。”下视其辙,登轼而望之,曰:“可矣。”遂逐齐师。

既克,公问其故。对曰:“夫战,勇气也。一鼓作气,再而衰,三而竭。彼竭我盈,故克之。夫大国,难测也,惧有伏焉。吾视其辙乱,望其旗靡,故逐之。”

继续阅读“曹刿论战”

内卷

美国人类学家亚历山大·戈登威泽发展了内卷化的概念:在1936年的研究原始文化的一篇论文中,他使用“内卷化”来形容某文化模式达到某最终形态后,无法自我稳定,也无法转变为新的形态,只能使自己在内部更加复杂化。戈登威泽认为,文化模式达到了极致之后,模式的规定导致了文化的外在的统一性,从而渐进发展起统一性内部的不同要素的多样性:如毛利人的装饰艺术要素很少,却有着复杂而精细的设计,戈登威泽将这种现象称为内卷化。

Developer Weekly 10

A curated collection of publicly available resources on how technology and tech-savvy organizations around the world practice Site Reliability Engineering (SRE) Topics

免费的英文书籍,向初学者介绍 Python 如何用于科学计算

Vue父子组件通信的三两事(prop、emit)

ElasticSearch性能优化实践(JVM调优+ES调优)

浏览器是如何校验证书的?

Create animated GIF and WebP from videos using FFmpeg

Introducing Consistent Hashing

Consistent Hashing: An alternative for distributed hashing problems.

数据结构与算法视频

A gentle introduction to multithreading

JVM 调优实战 – 优化 2015 年 8G 内存 Macbook Pro 上 IDEA 的打开速度

Java Hotspot G1 GC的一些关键技术

深入理解 Java G1 垃圾收集器GC调优

Dealing with Ranges using Java TreeMaps