
中间件
突发7想
The more you know, the more you don't know
展开
-
redis分布式锁代码实现
实现目标 保证获取锁和释放锁操作的原子性; 保证锁在应用异常时能自动释放; 保证多线程情况,不会被其他线程提前释放; 获取锁 /** * 尝试获取分布式锁 * * @param lockKey 锁 * @param requestId 请求标识 * @param expireTime 超期时间, 秒 * @return 是否获取成功 */ public boolean requireLock(String lockKey, String requestId, int expireT原创 2020-08-14 08:52:18 · 236 阅读 · 0 评论 -
rocketmq4.7部署 避坑指南
rocketmq作为ASF顶级项目, 官方文档维护的真是不严谨,之前测试环境弄了半天,最后使用经常报找不到路由信息。此处记录一下生产环境的安装步骤。 hostnamectl set-hostname rocketmq01 hostnamectl set-hostname rocketmq02 安装jdk 下载zip包,上传主机目录,unzip解压; 配置环境变量:vi /etc/profile export JAVA_HOME=/opt/java/jdk1.8.0_261 export PATH=$原创 2020-07-21 14:44:03 · 1033 阅读 · 2 评论 -
codis3部署实践
1. 组件列表: Codis Server:基于 redis-3.2.8 分支开发。增加了额外的数据结构,以支持 slot 有关的操作以及数据迁移指令。具体的修改可以参考文档 redis 的修改。 Codis Proxy:客户端连接的 Redis 代理服务, 实现了 Redis 协议。 除部分命令不支持以外(不支持的命令列表),表现的和原生的 Redis 没有区别(就像 Twemproxy)。 对于同一个业务集群而言,可以同时部署多个 codis-proxy 实例; 不同 codis-proxy 之间由 c原创 2020-07-16 10:16:26 · 243 阅读 · 1 评论