思码堂

把所思所写与你分享

排序:
默认
按更新时间
按访问量

缓存刷新术之保证数据一致性

1. 概述 在上一篇文章《缓存读取术之防止缓存雪崩》里我们解决了引入缓存后读数据的问题,本文分析写数据要考虑的问题。数据变更时是更新缓存还是淘汰缓存?是先写DB再写Cache,还是先写Cache再写DB?如何考量?另外,如果写DB成功了但写Cache失败了,数据就会不一致,如何解决?下面逐一探讨...

2018-03-03 00:12:48

阅读数:2224

评论数:7

缓存读取术之防止缓存雪崩

概述 如今许多互联网应用系统都重度依赖缓存来提高读操作的性能,对于这些系统来说如何正确地使用缓存至关重要。本文从缓存读取这个视角来讨论缓存架构设计上的一些思路。重点关注如何防止缓存雪崩。 1. 缓存读操作 引入缓存后,读数据的流程如下: (1)先读缓存,如果缓存中有数据(hit)...

2018-02-14 23:59:46

阅读数:3119

评论数:5

快速定位生产故障问题-JVM进程CPU占用率高于100%

前言 古语有云:人在江湖漂,哪有不挨刀。 这几年作为技术leader处理过的线上紧急问题,掐指一算应该有不下10次吧(说多了都是泪啊~~)。所以挡刀救火也是leader的必备技能!本文主要分享遇到“JVM进程CPU占用率超100%”时如何快速定位原因。 1. 生产故障-JVM进程C...

2018-02-12 11:43:56

阅读数:3900

评论数:8

单元测试系列三-基于Springboot+Junit+Mockito做单元测试

前言 前面的两篇文章讨论过《为什么要写单元测试,何时写,写多细》和《单元测试规范》,这篇文章介绍如何使用Springboot+Junit+Mockito做单元测试,案例选取撮合交易的一个类来做单元测试。 单元测试前先理解需求 要写出好的单测,必须先理解了需求,只有知道做什么才能知道怎么测...

2018-02-09 19:28:16

阅读数:1487

评论数:2

单元测试系列二-单元测试规范(适用于Java)

技术选型 UT框架:JUnit (4.12) Mock框架:Mockito (1.10.19) 文件、类与方法命名规范 源文件目录 src/main/java UT文件目录 src/test/java UT类命名规范 假设源类的全限定名为 com.your...

2018-02-09 19:12:30

阅读数:383

评论数:0

单元测试系列一-为什么要写单元测试,何时写,写多细

一、前言 半年前在公司团队内推动单元测试的落地,略有一些心得,记录在此。如有不同观点或建议,请在评论区留言,一起探讨。 定义:单元测试是用来对一个模块、一个函数或者一个类来进行正确性检验的测试工作。 单元测试从长期来看,可以提高代码质量,减少维护成本,降低重构难度。但是从短期来看,...

2018-02-09 19:04:37

阅读数:1361

评论数:0

Git快速入门-常用命令之交响乐篇

Git快速入门系列文章 - Git快速入门-安装配置篇 - Git快速入门-常用命令之独奏篇 - Git快速入门-常用命令之交响乐篇 - Git快速入门-git stash 暂存变更,git reset 撤销commit,git revert 回退远程版本库 1.概述 G...

2018-02-08 14:01:04

阅读数:2134

评论数:2

Git快速入门-常用命令之独奏篇

Git快速入门系列文章 - Git快速入门-安装配置篇 - Git快速入门-常用命令之独奏篇 - Git快速入门-常用命令之交响乐篇 - Git快速入门-git stash 暂存变更,git reset 撤销commit,git revert 回退远程版本库 1.概述 G...

2018-02-08 14:00:44

阅读数:5133

评论数:4

Git快速入门-安装配置篇

Git快速入门系列文章 - Git快速入门-安装配置篇 - Git快速入门-常用命令之独奏篇 - Git快速入门-常用命令之交响乐篇 - Git快速入门-git stash 暂存变更,git reset 撤销commit,git revert 回退远程版本库 1.概述 G...

2018-02-08 13:57:03

阅读数:912

评论数:0

Git快速入门-git stash 暂存变更,git reset 撤销commit,git revert 回退远程版本库

Git快速入门系列文章 - Git快速入门-安装配置篇 - Git快速入门-常用命令之独奏篇 - Git快速入门-常用命令之交响乐篇 - Git快速入门-git stash 暂存变更,git reset 撤销commit,git revert 回退远程版本库 注:本文基于...

2018-02-08 11:42:04

阅读数:1930

评论数:0

用SWT可视化工具快速开发GUI应用

一、开发背景介绍:      1. 要开发什么工具?     最近和公司里的几位同事凑钱买了个的士发票打印机(报销用,你懂的^_^),内容可自己写,比如金额,时间,路程等等。发票内容的输出位置和文字样式要跟真实发票的一样,否则容易穿帮(嘻嘻...)。但位置、样式要手工调,非常麻烦。所以如果有个工具...

2013-09-02 14:12:30

阅读数:774

评论数:0

Java并发编程——this引用逸出("this"Escape)

     并发编程实践中,this引用逃逸("this"escape)是指对象还没有构造完成,它的this引用就被发布出去了。这是危及到线程安全的,因为其他线程有可能通过这个逸出的引用访问到“初始化了一半”的对象(partially-constructed ob...

2013-08-30 16:42:22

阅读数:4443

评论数:7

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