首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
myye
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
16
文章 16
沸点 0
赞
16
返回
|
搜索文章
赞
文章( 16 )
沸点( 0 )
如何用Redis实现分布式锁?
上一章节我提到了基于zk分布式锁的实现,这章节就来说一下基于Redis的分布式锁实现吧。 在开始提到Redis分布式锁之前,我想跟大家聊点Redis的基础知识。 setnx 是SET if Not eXists(如果不存在,则 SET)的简写。 用法如图,如果不存在set成功返…
分布式锁实现汇总
直接建一张表,里面记录锁定的方法名 时间 即可。 需要加锁时,就插入一条数据,释放锁时就删除数据。 操作成功的那个线程获得了该方法的锁,可以执行方法体内容。 这把锁强依赖数据库的可用性,数据库是一个单点,一旦数据库挂掉,会导致业务系统不可用。 这把锁没有失效时间,一旦解锁操作失…
详细介绍Spring Boot + RabbitMQ实现延迟队列
顾名思义,延迟队列就是进入该队列的消息会被延迟消费的队列。而一般的队列,消息一旦入队了之后就会被消费者马上消费。 延迟队列多用于需要延迟工作的场景。最常见的是以下两种场景: 延迟消费。比如: 用户生成订单之后,需要过一段时间校验订单的支付状态,如果订单仍未支付则需要及时地关闭订…
Docker的那点事儿
Docker是一个基于轻量级虚拟化技术的容器,整个项目基于Go语言开发,并采用了Apache 2.0协议。Docker可以将我们的应用程序打包封装到一个容器中,该容器包含了应用程序的代码、运行环境、依赖库、配置文件等必需的资源,通过容器就可以实现方便快速并且与平台解耦的自动化部…
redis源码分析之事务Transaction(上)
这篇文章我们重点分析一下redis事务命令中的两个辅助命令:watch跟unwatch。 依然从server.c文件的命令表中找到相应的命令以及它们对应的处理函数。 watch,用于客户端关注某个key,当这个key的值被修改时,整个事务就会执行失败(注:该命令需要在事务开启前…
Asyncdb(二):Java IO 初探
本文由 GodPan 发表在 ScalaCool 团队博客。 Java IO对大多数Java程序员来说是熟悉又陌生,熟悉的是感觉到处都有它的身影,小到简单的读取文件,大到各种服务器的应用,陌生的是Java IO背后到底是一个怎样的机制,今天就让我们去了解一下这位老朋友吧。本文不…
Java集合之HashMap源码解析
这篇文章fuck的是HashMap,为什么先选择它呢,因为Android开发中最常用的数据集合就是HashMap和ArrayList,这里先Fuck HashMap。 1.HashMap内部采用的数据结构——>HashMap内部采用的是数组加单链表来实现的,单链表的插入为头插法…
分布式消息中间件RocketMQ学习教程①
消息队列(Message Queue,简称MQ)。消息中间件作为实现分布式消息系统可拓展、可伸缩性的关键组件,具有高吞吐量、高可用等等优点。 常用的消息队列有RocketMQ、kafka、ActiveMQ、RabbitMQ、ZeroMQ等等 activemq rabbitmq…
一道java面试题分析及思考
无意中了解到如下面试题目,觉得蛮好,但是没有分析,所以自己拿来分析了下,以及自己的一些思考理解。 synchronize实例锁。 并发下的内存可见性。 该题目涉及到2个线程(主线程main、子线程)、关键词涉及到synchronized、Thread.sleep。 synchr…
下一页
关注了
39
关注者
0
收藏集
0
关注标签
51
加入于
2017-10-20