首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
hoohack
掘友等级
软件开发
|
Kugou
PHP/Java/Golang/咖啡/奶茶
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
52
文章 52
沸点 0
赞
52
返回
|
搜索文章
赞
文章( 52 )
沸点( 0 )
奇妙的 CSS MASK
本文将介绍 CSS 中一个非常有意思的属性 mask 。 顾名思义,mask 译为遮罩。在 CSS 中,mask 属性允许使用者通过遮罩或者裁切特定区域的图片的方式来隐藏一个元素的部分或者全部可见区域。 其实 mask 的出现已经有一段时间了,只是没有特别多实用的场景,在实战中…
Raft探索历程--Part2
紧接着上一篇的内容,继续探索Raft的leader选举、日志复制、安全性等等实现细节。 一个Raft集群通常包含多个机器,比较普遍的Raft集群组成是2F+1,F代表的是可以发生失败的机器数量。比如集群有5台机器,那么Raft只能容忍两台服务失败,如果三台服务不能工作了,那么整…
Raft探索历程--Part1
Raft是一个保证分布式系统数据一致性的共识算法,诞生的目的就是为了探索一种更容易理解的共识算法,原因是上一个描述这个算法的协议--Paxos较难理解和在生产环境上使用。(注:笔者没有掌握Paxos算法,所以这里不会去作比较,后续如果学习到的话会做一个比较) 笔者主要是通过阅读…
使用拦截器统一处理异常
作为一个业务仔,在业务接口代码中肯定会遇到处理异常的情况,比如有代码逻辑的异常,业务逻辑的异常等等。这些异常场景是非常非常多的,这么多异常逻辑要处理,就意味着要写很多重复的代码,作为一个有点追求的业务仔,不能只是懂得CURD,当然希望代码看起来简洁、舒服一点。 本文打算分享笔者…
线上大量CLOSE_WAIT的原因深入分析
这一次重启真的无法解决问题了:一次 MySQL 主动关闭,导致服务出现大量 CLOSE_WAIT 的全流程排查过程。 近日遇到一个线上服务 socket 资源被不断打满的情况。通过各种工具分析线上问题,定位到问题代码。这里对该问题发现、修复过程进行一下复盘总结。 先看两张图。一…
为什么需要分布式系统
最近在学习MIT6.824的分布式系统课程,正在看Raft的论文,Raft是一种共识算法(Consensus algorithms),共识算法是用来保证分布式系统里数据的一致性的算法,所以也可以说是一个一致性算法。 在学习这个课程的过程中,发现其实对分布式系统这个概念很模糊,好…
[Redis源码阅读]dict字典的实现
dict是一种用于保存键值对的抽象数据结构,在redis中使用非常广泛,比如数据库、哈希结构的底层。 都会使用到dict作为底层数据结构的实现。 根据数据结构定义,把关联图画出来后,看代码的时候就更加清晰。 从图中也可以看出来,字典的哈希表里,使用了链表解决键冲突的情况,称为链…
Mockito-提高单元测试效率利器
之前在开发进行到写单元测试阶段的时候,发现要测试的方法里面是包含依赖的:外部接口RPC调用、DB调用。在某些情况下,部分依赖不稳定或者无法在测试环境调用时,会导致用例偶尔执行失败。 另外一点,很多用例都是在测试用例的开头写了@SpringRunTest的注解,导致跑用例的时候会…
理解Java8中的时间API
在Java8之前,在Java开发过程中,如果要操作时间,是使用Date这个类,在Java8中新增了LocalTime、LocalDate和LocalDateTime,日期和时间的处理变得更加方便和容易。用了一段时间,刚开始每次用的时候都要上网查一波才能找到要的答案,后来认真看一…
亲,建议你使用LocalDateTime而不是Date哦
calendar是共享变量,并且这个共享变量没有做线程安全控制。当多个线程同时使用相同的SimpleDateFormat对象【如用static修饰的SimpleDateFormat】调用format方法时,多个线程会同时调用calendar.setTime方法,可能一个线程刚设…
下一页
个人成就
文章被点赞
596
文章被阅读
70,760
掘力值
2,350
关注了
6
关注者
335
收藏集
0
关注标签
13
加入于
2016-07-05