摘要: 1,普通查找 命令模式下,按’/’或’?’,然后输入要查找的字符,Enter。 /和?的区别是,一个向前(下)找,一个向后(上)。 比如搜索user,输入/user,按下回车之后,可以看到vim已经把光标移动到该字符处和高亮了匹配的字符串。 查看下一个匹配,按下n(小写n), 跳转到上一个匹配,按下 阅读全文
posted @ 2020-06-04 16:29 ChaoWang1995 阅读(1974) 评论(0) 推荐(0)
摘要: 1,setting.xml <mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf 阅读全文
posted @ 2020-06-02 19:33 ChaoWang1995 阅读(687) 评论(0) 推荐(0)
摘要: 1,CamelCase 2,Free MyBatis plugin 3,Jrebel and XRelbel for IntelliJ 4,Lombok 5,RestfulTookit 阅读全文
posted @ 2020-06-02 16:23 ChaoWang1995 阅读(150) 评论(0) 推荐(0)
摘要: i++操作可分为三个步骤:读i的值,进行i+1,设置i的值。 如果两个线程同时对i进行i++操作,会出现如下情况 i设置值为0 线程A读到i的值为0 线程B也读到i的值为0 线程A执行了+1操作,将结果值1写入到内存 线程B执行了+1操作,将结果值1写入到内存 此时i进行了两次i++操作,但是结果却 阅读全文
posted @ 2020-05-31 18:36 ChaoWang1995 阅读(193) 评论(0) 推荐(0)
摘要: 基于redis的分布式锁 1 介绍 这篇博文讲介绍如何一步步构建一个基于Redis的分布式锁。会从最原始的版本开始,然后根据问题进行调整,最后完成一个较为合理的分布式锁。 本篇文章会将分布式锁的实现分为两部分,一个是单机环境,另一个是集群环境下的Redis锁实现。在介绍分布式锁的实现之前,先来了解下 阅读全文
posted @ 2020-05-31 02:09 ChaoWang1995 阅读(340) 评论(0) 推荐(0)
摘要: 先说场景: 物品W现在库存剩余1个,用户P1、P2同时购买,只有1人能购买成功,不允许超卖 秒杀也是类似的情况,只有1件商品,N个用户同时抢购,只有1人能抢到 这里不谈秒杀设计,不谈使用队列等使请求串行化,就谈下怎么用锁来保证数据一致性 常见的实现方案有以下几种: 1.代码同步, 例如使用 sync 阅读全文
posted @ 2020-05-17 21:49 ChaoWang1995 阅读(2359) 评论(1) 推荐(2)