分布式
evasnowind
关注java,分布式开发,微服务
展开
-
【转载】docker 搭建 mysql 5.7 主从复制
下文引自一位学友分享的材料,出处暂时找不到,留在博客中做个备份,侵删。docker 搭建 mysql 5.7 主从复制安装docker,docker-compose, 一般安装了docker都会安装docker-compose,可以使用docker-compose -verison查看是否安装docker pull mysql:5.7, 拉取mysql5.7镜像编写docker-compose文件version: '2' networks: byfn: .原创 2021-02-07 17:10:04 · 143 阅读 · 0 评论 -
分布式一致性与共识之(一)Raft
Raft基础在raft中,服务器节点共有3种状态(或者说角色):leader负责client交互和log复制,同一时刻系统中最多存在1个。follower节点的初始状态就是follower,follower只能被动响应请求RPC,从不主动发起请求RPC。如果follower在一定时间范围(后面会讲,这个叫election timeout)内没有收到leader的请求,则follower可以转变成candidate(If followers don’t hear from a leade原创 2020-10-22 16:43:39 · 615 阅读 · 0 评论 -
源码分析之Eureka服务端源码解析
文章目录说明eureka server基本功能启动eureka-server注册相关bean开启eureka server开启注册注册表管理核心类 InstanceRegistrycom.netflix.eureka.registry.InstanceRegistry是euraka server中注册表管理的核心接口。职责是在内存中管理注册到Eureka Server中的服务实例信息。实现类有PeerAwareInstanceRegistryImpl。服务注册接收服务心跳请求服务剔除剔除的限制剔除服务的定时原创 2020-09-29 17:52:25 · 558 阅读 · 0 评论 -
源码分析之Kafka Consumer消费消息的过程
源码分析之Kafka Consumer消费消息的过程文章目录源码分析之Kafka Consumer消费消息的过程说明Consumer如何使用?代码示例主要流程订阅主题的过程是如何实现的?经典思路:主动检测不支持的情况并抛出异常,避免系统产生不可预期的行为有关元数据更新拉取消息的过程是如何实现的?updateAssignmentMetadataIfNeeded() 更新元数据Coordinator#poll() 维持心跳,更新元数据ConsumerNetworkClient#poll() 封装所有网络通信原创 2020-09-11 14:58:01 · 1089 阅读 · 0 评论 -
分布式id生成-雪花算法实现资源汇总
讲分布式Id生成的文章很多,其中雪花算法也提到过多次,本文不再赘述,只是给出资源汇总,仅供参考。snowflake-snowflake-2010twitter原版,scala编写,地址:https://github.com/twitter-archive/snowflakejava版本snowflake代码源地址 参见https://github.com/beyondfengyu/Sn...原创 2019-10-22 18:10:31 · 179 阅读 · 0 评论 -
【听课笔记】java分布式锁
课程链接课程:https://url.163.com/VD8java锁synchronized在jdk 1.5以后,优化了,使其性能并不是像很多帖子说的那样,“非常重”JUC lock方法说明lock()获取锁,如果锁被暂用则一直等待tryLock()如果获取锁的时候锁被占用就返回false,否则返回truetryLock(long time, Ti...原创 2019-09-14 08:57:33 · 116 阅读 · 0 评论 -
【听课笔记】java分布式锁
课程链接课程:https://url.163.com/VD8java锁synchronized在jdk 1.5以后,优化了,使其性能并不是像很多帖子说的那样,“非常重”JUC lock方法说明lock()获取锁,如果锁被暂用则一直等待tryLock()如果获取锁的时候锁被占用就返回false,否则返回truetryLock(long time, Ti...原创 2019-09-18 17:01:37 · 75 阅读 · 0 评论