2018年7月29日

redis-分布式锁-消除竞争条件

摘要: 因为信号量的设计过程中,获取一个信号量需要执行多个命令组成的流水,这样容易形成竞争条件。 为了消除信号量实现中所有可能出现的竞争条件,构建一个正确的计数信号量,需要在 信号量时,添加带有短暂超时时间的锁。如果程序获取了锁,那么就可以执行正常信号量获取的命令流水;如果程序没有能够获取这个带有短暂超时的 阅读全文

posted @ 2018-07-29 22:17 手握太阳 阅读(353) 评论(0) 推荐(0)

redis-分布式锁-刷新信号量

摘要: 为什么需要刷新信号量呢,因为信号量有过期时间; 为什么信号量需要过期时间呢,因为需要利用超时特性,解决分布式锁存在的一些固有缺陷。 而对于类似流式API来说,一般10秒的过期时间是远远不够的。因此我们需要对信号量进行刷新,以防止其过期。 因为公平信号量区分开了“超时有序集合”和“信号量拥有者有序集合 阅读全文

posted @ 2018-07-29 21:46 手握太阳 阅读(436) 评论(0) 推荐(0)

svn

摘要: SVN打基线的操作就是“分支/标记”,SVN官方推荐在项目根目录下先建立trunk、branches、tags三个文件夹,其中“标记”(tags)文件夹就是用于存放基线的 可以啊 实际操作可能就是 create tag ,出来的tag就可以叫一个不可修改的基线了 但是,不要以为导入成功就可以了。你还 阅读全文

posted @ 2018-07-29 00:02 手握太阳 阅读(189) 评论(0) 推荐(0)

导航