分布式
cjf_wei
这个作者很懒,什么都没留下…
展开
-
Redis之Lua脚本:原子性的执行exsits&incr
Redis提供的命令虽然不少, 但是严格的说计算能力还是比较有限的. 好在Redis2.6版本后引入Lua脚本, 大大增强了这方面的计算能力. 最重要的是执行lua脚本还具备原子性, 所以在对一致性要求高的环境下, lua脚本或许是个不错的选择.本文通过具体的场景来简介下lua脚本的使用.这里,我们基于Springboot框架的RedisTemplate来操作redis.问题抽象:使用redis计数, 计数器的key会在生命周期是15分钟;每次优先查询redis中的计数器,当计数值不存在时,从数据库原创 2020-07-11 17:58:57 · 2205 阅读 · 0 评论 -
zookeeper学习笔记
Zookeeper是一种实现了分布式数据的一致性的解决方案。可以实现诸如数据发布/订阅、负载均衡、命名服务、集群管理等,许多开源项目都基于zookeeper实现集群的管理,数据的同步等,如用于海量数据存储分析的Hadoop,实时计算框架Storm,高吞吐量的消息队列kafka等。原创 2017-03-19 20:32:07 · 561 阅读 · 0 评论 -
基于zookeeper的统一命名服务及实现
在分布式调度系统中可以使用zookeeper实现统一命名服务,以获得类似于UUID的全局唯一名称。借助ZNODE顺序节点的特性,本文通过创建临时顺序节点来获得统一命名。使用zookeeper创建顺序节点时,成功创建的每个节点都会返回一个编号,使用该编号以及给定的名称即可生成具有特定含义的统一名称。原创 2017-04-09 10:01:23 · 2466 阅读 · 0 评论 -
ZeroMQ的订阅发布(publish-subscribe)模式
ZeroMQ的订阅发布模式是一种单向的数据发布,当客户端向服务端订阅消息之后,服务端便会将产生的消息源源不断的推送给订阅者,本文的示例代码来源于文献[1]示例代码的修改。发布-订阅图示 发布者使用PUB套接字将消息发送到队列中,订阅者使用SUB套接字从队列中源源不断的接收消息。新的订阅者可以随时加入,但之前的消息是无法接收到的;已有的订阅者可以随时退出;订阅者还可以添加“过滤器”用来有选...原创 2018-04-22 10:15:26 · 5469 阅读 · 0 评论