上一页 1 2 3 4 5 6 7 ··· 20 下一页
  2017年2月10日
摘要: Redisson分布式锁 之前的基于注解的锁有一种锁是基本redis的分布式锁,锁的实现我是基于redisson组件提供的RLock,这篇来看看redisson是如何实现锁的。 不同版本实现锁的机制并不相同 引用的redisson最近发布的版本3.2.3,不同的版本可能实现锁的机制并不相同,早期版本 阅读全文
posted @ 2017-02-10 10:33 min.jiang 阅读(12137) 评论(0) 推荐(3) 编辑
  2017年1月23日
摘要: 背景 对算法一直应用的比较少,最近看到一些典型的算法想练练手,想看看到底有多么让人讨厌。其实发现算法都有一定的套路,一般并不是临时凭空想出来的,大都建立在一些已经存在的经典算法知识以及数据结构上。换句话来说,如果某些玩法之前未接触过,那么让你在短时间内临时想出来还是有一定难度的。这有点类似项目经验, 阅读全文
posted @ 2017-01-23 13:03 min.jiang 阅读(8090) 评论(0) 推荐(0) 编辑
  2017年1月22日
摘要: 技能图谱 技能总结:查漏补缺,做到极致 开发语言 工作语言 Java,C#,JavaScript 兴趣语言 Shell,Go JAVA语言 IOC AOP ClassLoader 集合 泛型 多线程 异常 JVM 内存模型 GC GC的种类及应用场景,典型GC算法 监控(计划学习) 优化 借助jdk 阅读全文
posted @ 2017-01-22 13:59 min.jiang 阅读(931) 评论(1) 推荐(1) 编辑
  2017年1月19日
摘要: 背景 某些场景下,有可能一个方法不能被并发执行,有可能一个方法的特定参数不能被并发执行。比如不能将一个消息发送多次,创建缓存最好只创建一次等等。为了实现上面的目标我们就需要采用同步机制来完成,但同步的逻辑如何实现呢,是否会影响到原有逻辑呢? 嵌入式 这里讲的嵌入式是说获取锁以及释放锁的逻辑与业务代码 阅读全文
posted @ 2017-01-19 21:50 min.jiang 阅读(2793) 评论(0) 推荐(0) 编辑
  2017年1月12日
摘要: Spring MVC中的HandlerMapping与HandlerAdapter的关系 最近和同事讨论一个spring mvc的问题,问到HandlerMapping与HandlerAdapter有什么关系?虽然使用spring mvc时间也不短,但是瞬间能起来的只有两个关键词: @Request 阅读全文
posted @ 2017-01-12 15:02 min.jiang 阅读(17697) 评论(0) 推荐(1) 编辑
  2016年12月2日
摘要: 效率 变通实现微服务的per request以提高IO效率(二)遗留一个问题,如何正确的释放存储在ThreadLocal中的缓存,最理由就是在我们请求的方法执行完成后去清除缓存。 Filter 由于我的项目是基于dubbo的,所以可以利用dubbo提供的Filter机制去完成这件事情,可以看下fil 阅读全文
posted @ 2016-12-02 15:00 min.jiang 阅读(1164) 评论(0) 推荐(1) 编辑
  2016年11月27日
摘要: 效率 变通实现微服务的per request以提高IO效率中提到的同一请求过程中对于同一个方法的多次读取只实际调用一次,其余的读取均从第一次读取的结果缓存中获取,以提高读取的效率。实现方案是引入了Context对象,可以理解成上下文的一个环境变量,业务方法在获取数据时先从Context中取,如果取不 阅读全文
posted @ 2016-11-27 19:18 min.jiang 阅读(1618) 评论(0) 推荐(1) 编辑
  2016年11月26日
摘要: 效率 同一次业务操作过程中,往往会出现某种操作被重复执行,逻辑上来讲如果只执行一次是最理想的。这里所指的操作特指一些IO操作,比如从数据库中获取登录人的信息,也就是说如果一次请求中包含5个小逻辑,这5个小逻辑包含3次获取用户信息的操作,理想的情况是3次只有一次是从数据库中加载,其余的两次从缓存中获取 阅读全文
posted @ 2016-11-26 03:57 min.jiang 阅读(1816) 评论(0) 推荐(0) 编辑
  2016年11月20日
摘要: ZKUI中文编码 问题 上周有同事反馈,通过ZKUI这个工具去上传带有中文的节点值时会出现中文无法显示的问题。最终发现编码是NCR编码,全称是:Numeric Character Reference。 什么是NCR? 这里引入一段维基百科的描述。 A numeric character refere 阅读全文
posted @ 2016-11-20 11:32 min.jiang 阅读(3729) 评论(0) 推荐(0) 编辑
  2016年11月6日
摘要: 背景 工作多年,语言经历过C#,JAVA。但是做过的项目大多以业务系统为主,曾经做过一些基础架构的工作,但算法一直在工作中应用的比较少,导致多年之后基本都忘记完了。上一次面试过程中就有一个算法题,我能做对,但是感觉不是最优方案就放弃了。最近想想做为一个程序员,算法还是有必要再补习补习。 案例 有两个 阅读全文
posted @ 2016-11-06 01:11 min.jiang 阅读(28890) 评论(7) 推荐(1) 编辑
  2016年10月29日
摘要: 背景 做为一名使用高级语言的程序员,面向对象的设计一直都是体现程序员能力的重要标准之一,所以在我工作两年后也就是2008年我也开始了对于面向对象设计的学习,主要是拿GOF设计模式来练手,尽管实际项目中没有真正的使用过。常见的23种设计模式,我从2008一至到2009年将近一年的时间我基本上将这些模式 阅读全文
posted @ 2016-10-29 12:47 min.jiang 阅读(1946) 评论(2) 推荐(2) 编辑
  2016年10月15日
摘要: 最近遇到一个单元测试的问题,本周正好学个了一个SCORE法则,这里正好练练手应用此法则将问题的前因后果分享给大家。 阅读全文
posted @ 2016-10-15 15:57 min.jiang 阅读(2681) 评论(0) 推荐(0) 编辑
  2016年9月4日
摘要: 不论你是否关注,Java Web应用都或多或少的使用了线程池来处理请求。线程池的实现细节可能会被忽视,但是有关于线程池的使用和调优迟早是需要了解的。本文主要介绍Java线程池的使用和如何正确的配置线程池。 单线程 我们先从基础开始。无论使用哪种应用服务器或者框架(如Tomcat、Jetty等),他们 阅读全文
posted @ 2016-09-04 16:56 min.jiang 阅读(962) 评论(0) 推荐(0) 编辑
  2016年9月3日
摘要: 重点 应用程序可以选择一个适当的即时编译器来进行接近机器级的性能优化。 分层编译由五层编译构成。 分层编译提供了极好的启动性能,并指导编译的下一层编译器提供高性能优化。 提供即时编译相关诊断信息的JVM开关。 像内联化和向量化之类的优化进一步增强了性能。 OpenJDK HotSpot Java V 阅读全文
posted @ 2016-09-03 15:50 min.jiang 阅读(1537) 评论(0) 推荐(0) 编辑
  2016年9月1日
摘要: 表单的数据检验对一个程序来讲非常重要,因为对于客户端的数据不能完全信任,常规的检验类型有: 参数为空,根据不同的业务规定要求表单项是必填项 参数值的有效性,比如产品的价格,一定不能是负数 多个表单项组合检验,比如在注册时密码与确认密码必须相同 参数值的数据范围,常见的是一些状态值,或者叫枚举值,如果 阅读全文
posted @ 2016-09-01 23:25 min.jiang 阅读(10183) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 20 下一页