不会写文章的程序员不是好厨师

29 篇文章
10 人订阅

全部文章

LNAmp

JVM Flags介绍-Heap相关

以下的讨论的heap是这样的heap(堆):基于经典分类,分为young gen, old gen , permanent gen 。1.8已经没有perman...

791
LNAmp

Spring源码初探-IOC(1)-Bean的初始化

对于一名Java码农来说,Spring真是太重要了。目前Spring的体系已经发展得非常壮大,其底层基石core,beans,context非常牢固。

681
LNAmp

Spring源码初探-IOC(2)-Bean的初始化-自定义标签解析

前面一文介绍的是Spring对于DefaultElement的解析,例如bean/import/alias等,但是在Spring体系中也存在很多扩展标签,例如事...

573
LNAmp

Spring源码初探-IOC(3)-Bean的初始化-bean的加载

前面两篇文章主要介绍的是xml到BeanDefinition的过程,我们知道在使用Spring的过程中通常直接使用getBean(beanName)的方式,ge...

632
LNAmp

日志那些事儿——slf4j集成logback/log4j

在日志Logger漫谈中提到了slf4j仅仅是作为日志门面,给用户提供统一的API使用,而真正的日志系统的实现是由logback或者log4j这样的日志系统实现...

682
LNAmp

ThreadLocal解析与最佳实践

用于同一个线程内的方法要共享某些变量或状态的时候,提供线程内的局部变量,这种变量在线程的生命周期内起作用,减少同一个线程内多个函数或者组件之间一些公共变量的传递...

481
LNAmp

日志那些事儿——由一次bug引发的思考-client jar应该如何输出日志

前面几篇“日志那些事儿”讲解了日志的重要性和相关使用。以slf4j+logback的使用为例,我们的步骤为:

884
LNAmp

Spring源码初探-IOC(4)-Bean的初始化-循环依赖的解决

在实际工作中,经常由于设计不佳或者各种因素,导致类之间相互依赖。这些类可能单独使用时不会出问题,但是在使用Spring进行管理的时候可能就会抛出BeanCurr...

542
LNAmp

日志那些事儿——Logback源码解析

在上篇文章日志漫谈中谈到,日志在监控报警、查错分析等方面有着非常重要的应用。Logback作为目前最火的日志系统,本文就简单分析一下logback日志打印的过程...

891
LNAmp

Spring源码初探-IOC(5)-ApplicationContext功能扩展及其扩展点

前面几篇关于Spring的文章简单阐述了使用BeanFactory作为容器时bean的初始化过程。然而在实际使用中,我们并不会直接接触和编码BeanFactor...

652
LNAmp

日志那些事儿——日志Logger漫谈

最近在关注限流、降级、监控等系统稳定性方面的技术,反复牵涉到的几个技术名词是日志log,Aop切片。

942
LNAmp

记一次"诡异"的git merge错误

今天照常开发,在日常部署测试的时候进行git merge 竟然出现了"代码丢失"的情况,相当诡异,特此记录。

743
LNAmp

日志那些事儿——谈谈需要日志输出的client jar应该如何设计

上篇文章提到了应该如何设计需要输出日志的client jar,大概有三个比较重要的点。

803
LNAmp

浅析AtomicLong以及Unsafe

最近关注着限流、降级相关的设计,开源的Hystrix提供了一种设计思路。限流降级的前提是需要了解系统的各种状态,服务的响应情况,接口的调用情况,数据库的情况等等...

562
LNAmp

伪共享(False Sharing)和缓存行(Cache Line) 大杂烩

在上篇介绍LongAdder的文章中,我们最后留下了一个问题,为什么Cell中要插入很多个实际上并没有使用的Long变量?这个问题就得从False Sharin...

831
LNAmp

浅析HystrixRollingNumber(用于qps计数的数据结构)

考虑到一种需求场景,我们需要统计系统qps、每秒平均错误率等。qps表示每秒的请求数目,能想到的最简单的方法就是统计一定时间内的请求总数然后除以总统计时间,所以...

672
LNAmp

[翻译]Java 6,7,8中的String.intern

最近一直在关注“故障排查”的相关知识,首先着手的是OOM的异常。OOM异常通常会有Perm区的OOM(java7及以前)和HeapSpace的OOM,这两种各有...

702
LNAmp

Spring Retry 学习记录

在很多场景中,我们需要“重试”,重试意味着反复执行一段代码直至成功,或者重试多次无果后标记失败。“重试”的出发点有可能是为了保持状态的一致,也有可能是为了容忍被...

742
LNAmp

为Hibiscus写文之定时器篇——HashedWheelTimer

去年一年在简书大约写了25篇,在公司内网写了5篇博客。今年定个小目标吧,在简书产出高质量的博客50篇,加油!

742
LNAmp

利用LockSupport实现简单Future

上篇文章已经讲到了LockSupport提供的功能,以及如何使用LockSupport实现锁的语义,本文将介绍Future的语义以及如何利用LockSuppor...

613

扫码关注云+社区