-
李荣浩-老街
一张褪色的照片好像带给我一点点怀念巷尾老爷爷卖的热汤面味道弥漫过旧旧的后院流浪猫睡熟在摇晃秋千夕阳照了一遍他咪着眼那张同桌寄的明信片安静的躺在课桌的里面快要过完的春天还有雕刻着图案的门帘窄窄的长长的过道两边老房子依然升起了炊烟刚刚下完了小雨的季节爸妈又一起走过的老街记不得哪年的哪一天很漫长又很短暂的岁月现在已经回不去早已流逝的光阴手里的那一张渐渐模糊不清的车票成了回忆的信号忘不掉的是什么我也不知道......1,073 0 2017-02-14 16:22
-
HashMap的工作原理(转载)
本文由ImportNew-唐小娟翻译自Javarevisited原文地址:http://www.importnew.com/7099.htmlHashMap的工作原理是近年来常见的Java面试题。几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道Hashtable和HashMap之间的区别,那么为何这道面试题如此特殊呢?是因为这道题考察的深度很深。这题经常出现在高级或中......1,058 0 2018-01-17 18:24
-
Java日志框架:logback详解(转载)
原文出处:五月的仓颉为什么使用logback记得前几年工作的时候,公司使用的日志框架还是log4j,大约从16年中到现在,不管是我参与的别人已经搭建好的项目还是我自己主导的项目,日志框架基本都换成了logback,总结一下,logback大约有以下的一些优点:内核重写、测试充分、初始化内存加载更小,这一切让logback性能和log4j相比有诸多倍的提升logback非常自然地直接实现了slf4j......1,055 0 2018-04-09 19:01
-
RocketMQ 源码学习 2 : Namesrv
原文出处:谢晞鸣1.Namesrv简介Namesrv可以理解为一个注册中心,整个Namesrv的代码非常简单,主要包含两块功能:管理一些KV的配置管理一些Topic、Broker的注册信息2.Namesrv启动过程启动过程主要涉及NamesrvStartup/NamesrvController两个类,NamesrvStartup负责解析命令行的一些参数到各种Config对象中(NamesrvCon......1,053 0 2018-06-04 14:38
-
使用 Java 注解自动化处理对应关系实现注释代码化
原文出处:琴水玉概述假设我们要从一个ES索引(相当于一张DB表)查询数据,ES表有order_no,order_type,state等字段,而应用对象则有属性orderNo,orderType,state等。这样,就会面临“将应用对象的属性与ES字段对应起来”的问题。固然可以通过注释来说明,不过这样显得比较生硬。因为注释并不起实际作用,代码里还得写一套映射关系,就会存在注释与代码不一致的情况。那么......1,046 0 2018-04-16 11:24
-
JVM语言“三巨头” – Scala Clojure Groovy
本文作者:ImportNew -储晓颖最近举行了两次大型的JVM编程语言的投票 (投票1, 投票2)。这些投票产生了一些非常有趣的数据。由于投票者来自不同的阵营,两次投票结果之间也稍有不同。在我参与的投票中Clojure进展非常顺利(领先Scala和Groovy),因为投票者中很多来自喜爱LISP的HackerNews团体。另一场DZone的投票也吸引了一长队的投票者......1,046 0 2018-01-26 17:21
-
Netty-Mina深入学习与对比(一)(转载)
转载自并发编程网–ifeve.com本文链接地址:Netty-Mina深入学习与对比(一)这博文的系列主要是为了更好的了解一个完整的nio框架的编程细节以及演进过程,我选了同父(TrustinLee)的两个框架netty与mina做对比。版本涉及了netty3.x、netty4.x、mina1.x、mina2.x、mina3.x。这里并没有写netty5.x的细节,看了netty5的修改文档,似乎......1,045 0 2018-01-29 18:53
-
通过 jstack 与 jmap 分析一次线上故障
原文出处:kingszelda一、发现问题下面是线上机器的cpu使用率,可以看到从4月8日开始,随着时间cpu使用率在逐步增高,最终使用率达到100%导致线上服务不可用,后面重启了机器后恢复。二、排查思路简单分析下可能出问题的地方,分为5个方向:系统本身代码问题内部下游系统的问题导致的雪崩效应上游系统调用量突增http请求第三方的问题机器本身的问题三、开始排查查看日志,没有发现集中的错误日志,初步......1,044 0 2018-06-04 15:29
-
面试必问的 CAS ,要多了解(转载)
原文出处:占小狼前言CAS(CompareandSwap),即比较并替换,实现并发算法时常用到的一种技术,Douglea大神在java同步器中大量使用了CAS技术,鬼斧神工的实现了多线程执行的安全性。CAS的思想很简单:三个参数,一个当前内存值V、旧的预期值A、即将更新的值B,当且仅当预期值A和内存值V相同时,将内存值修改为B并返回true,否则什么都不做,并返回false。问题一个n++的问题。......1,038 0 2018-01-19 09:42
-
Spring 中获取 request 的几种方法,及其线程安全性分析
原文出处:编程迷思前言本文将介绍在SpringMVC开发的web系统中,获取request对象的几种方法,并讨论其线程安全性。概述在使用SpringMVC开发Web系统时,经常需要在处理请求时使用request对象,比如获取客户端ip地址、请求的url、header中的属性(如cookie、授权信息)、body中的数据等。由于在SpringMVC中,处理请求的Controller、Service等......1,035 0 2018-04-16 11:27
-
kafka 源码分析3: Producer
原文出处:刘正阳ProducerProducer是生产者的接口定义常用的方法有publicFuture<RecordMetadata>send(ProducerRecord<K,V>record);publicFuture<RecordMetadata>send(ProducerRecord<K,V>record,Callbackcallback);......1,021 0 2018-06-04 15:43
-
IDEA 代码生成插件 CodeMaker(转载)
原文出处:肖汉松前言Java开发过程中经常会遇到编写重复代码的事情,例如说:编写领域类和持久类的时候,大部分时候它们的变量名称,类型是一样的,在编写领域类的时候常常要重复写类似的代码。类似的问题太多,却没找到可以支持自定义代码模板的插件,只能自己动手,丰衣足食,开发了一个IDEA的代码生成插件,通过Velocity支持自定义代码模板来生成代码。项目地址:CodeMaker主要功能支持增加自定义代码......1,016 0 2018-01-24 19:16
-
JDK 10 的 109 项新特性
原文出处:开源中国虽然感觉JDK9发布才仅仅几周的时间,然而,随着新的OpenJDK的发布节奏,JDK10已经到达发布候选里程碑阶段。我看过各种关于JDK10新特性的博客,但是它们都倾向于关注通过 JEPS 定义的大方面。这篇博文,我将看看是否可以罗列出JDK10中已经发生变化的方方面面(包括新增的和剔除的)。有时候,我会做一些关于JavaSE的报告会。之前我在“JDK9的55......1,013 0 2018-03-30 18:36
-
G1 垃圾收集器之对象分配过程(转载)
原文出处:占小狼G1的年轻代由edenregion和survivorregion两部分组成,新建的对象(除了巨型对象)大部分都在edenregion中分配内存,如果分配失败,说明edenregion已经被全部占满,这时会触发一次younggc,回收edenregion的垃圾对象,释放空间,满足当前的分配需求。小对象G1默认启用了UseTLAB优化,创建对象(小对象)时,优先从TLAB中分配内存,如......1,012 0 2018-01-23 17:24
-
深入 Spring Boot:排查 @Transactional 引起的 NullPointerException(转载)
原文出处:hengyunabc写在前面这个demo来说明怎么排查一个@Transactional引起的NullPointerException。https://github.com/hengyunabc/spring-boot-inside/tree/master/demo-Transactional-NullPointerException定位NullPointerException的代码Dem......1,006 0 2018-01-16 10:32