常用正则表达式

正则语法 每个语言的语法不一样,大致类似。 1. 常用正则 1.nginx匹配 ([^\s]+) - ([.+]) select '([^\\s]+) - (\\[.+\\])' 注释: \转义,这里加上sql转义是两个转义。 括号括起来是一

数据库底层原理

我不太喜欢一直把技术当黑箱使用,需要花时间理解底层原理。参考资料: http://coding-geek.com/how-databases-work/ http://blog.jobbole.com/100349/ You can google by yourself “how does a relational database work” to see how few results there are. Moreover, those articles are short. http://coding-geek.com/how-does-a-hashmap-work-in-java/

设计模式

一、过滤器模式 过滤器模式(Filter Pattern)或标准模式(Criteria Pattern)允许开发人员使用不同的标准来过滤一组对象,

资料地址

常用 kafka reset offset https://gist.github.com/marwei/cd40657c481f94ebe273ecc16601674b 数据库底层原理 http://coding-geek.com/how-databases-work/ hashMap http://coding-geek.com/how-databases-work/

面向对象经验

用面向对象方法开发软件,通常需要建立3种形式的模型它们分别是:描述系统数据结构的对象模型、描述系统控制结构的动态模型和描述系统功能的功能模型

EncodingIdMapper put 方法: long eId = encode( inputId ); dataCache.set( nodeId, eId ); groupCache.set( nodeId, group.id() ); candidateHighestSetIndex.offer( nodeId ); dataCache.set( nodeId, eId ); DynamicLongArray.set(long index, long value ) at( index ).set( index, value ); 1. at {DynamicNumberArray<N extends NumberArray<N>> @Override public N at( long index ) { if ( index >= length() ) { synchronizedAddChunk( index ); // 扩容 new OffHeapLongArray( length, defaultValue, base ); } int chunkIndex = chunkIndex( index ); return chunks[chunkIndex]; } } at 方法先看情况给 chunks 扩容,实际上就是新建一个 OffHeapLongArray ,放到 chunks 数租,然后返回一个。实际上就是返回当前的顶点应该所在的 LongArray。 2.