自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sam_Deep_Thinking

努力深入思考和总结

  • 博客(8)
  • 资源 (1)
  • 问答 (12)
  • 收藏
  • 关注

原创 ThreadPoolExecutor简单介绍

在项目中如果使用发短信这个功能,一般会把发短信这个动作变成异步的,因为大部分情况下,短信到底是发送成功或者失败,都不能影响主流程。当然像发送MQ消息等操作也是可以封装成异步操作的。使用基本的New Thread如果想一个操作变成异步的,可以直接new thread,然后在run方法中实现业务操作即可。例如: new Thread(new Runnable() { public voi

2016-05-24 09:56:40 1165

原创 java垃圾回收算法之-引用计数器

引用计数器算法算是一种古老的java垃圾回收算法,目前很多版本的java已经废弃掉这种算法了。不过多了解历史解决方案也是很有好处的,通过总结它的优缺点,再与新算法比较,可以帮助更好的理解新算法。引用计数器算法描述定义:给每个对象分配一个计算器,当有引用指向这个对象时,计数器加1,当指向该对象的引用失效时,计数器减一。最后如果该对象的计算器为0时,java垃圾回收器会认为该对象是可回收的

2016-05-23 13:55:57 6991 2

原创 实时刷新缓存-处理mysql主从延迟的一些设计方案

在项目开发当中,经常有这样一种场景,对数据库进行添加、修改、删除操作的应用直接连接master库,只对数据库进行查询的应用,会先建立一个中央缓存,例如redis或者memcache,如果缓存没有命中,那么直接访问slave库。下文会介绍一下在刷新中央缓存时,如果发生主从延迟,应该如何处理。也即是,当应用System-A 把数据库写入master库的时候,System-B应用在读取slave库的时候...

2016-05-23 09:38:53 4254

原创 spring整合ehcache缓存

pom文件<dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.2</version></dependency>ehcache.xml<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-

2016-05-04 10:27:45 760

原创 使用contiperf进行压测

contiperf是一个轻量级的压测工具,使用非常的广泛,并且可以生成report,帮助做性能分析。简单例子public class TestContiPerf { @Rule public ContiPerfRule i = new ContiPerfRule(); @Test @PerfTest(threads = 100,duration=15000) public

2016-05-03 14:48:26 2416

原创 最近使用ut的一些体会

写有价值的ut必须保证自己写的ut是有价值的,只要全部跑过了,那么代码的质量就可以得到保证。更有自信的改代码了使用ut之后,如果发现了bug或者需要重构代码的时候,可以大胆的去做,因为有覆盖率极高的ut来保证和检查修改后的代码。只要bug,改完代码后,用ut覆盖当测试人员提交了一个bug,那么你改完代码后,必须用ut进行覆盖,防止以后修改代码时,由于不小心,导致原来的bug又出现。如果业务方法需要依

2016-05-03 14:38:41 2929

原创 Spring Cacheable标签 内部调用失效问题

如果你只是想使用一个轻量级的缓存方案,那么可以尝试使用Spring cache方案。那么在使用spring @Cacheable注解的时候,要注意,如果类A的方法f()被标注了@Cacheable注解,那么当类A的其他方法,例如:f2(),去直接调用f()的时候,@Cacheable是不起作用的,原因是@Cacheable是基于spring aop代理类,f2()属于内部方法,直接调用f()时,是不

2016-05-03 14:26:33 7469 1

原创 HttpClient工具正确使用方式

虽然现在微服务非常的流行,但是公司内部的蛮多系统仍然对外提供http接口。在调用http接口工具类中,apache httpclient工具用的比较多。下面列举一些正确使用httpclient的一些要点。设置socketTimeout可以在RequestConfig 中设置socketTimeout,表示数据传输处理时间,如下: RequestConfig requestConfig = Reque

2016-05-03 14:12:56 19769 6

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除