大纲1.Dubbo 2.7和3.x版本的区别2.Dubbo服务的基本流程和启动入口3.Dubbo服务发布的主流程4.服务发布时执行相关组件的初始化5.服务发布时执行的服务实例刷新操作6.服务发布时执行的服务实例初始化操作7.服务发布时执行的服务实例发布操作8.执行服务实例发布操作时的主流程9.服务发布过程中ProxyFactory生成Invoker10.服务发布过程中Protocol组件发布Inv
大纲1.服务端代码最佳实践2.客户端代码最佳实践3.Netty的高性能核心问题分析4.基于Disruptor异步化处理Netty的长链接业务5.Disruptor核心池化封装实现6.实现接入百万长链接1.服务端代码最佳实践(1)TCP握手原理(2)Netty服务端代码(1)TCP握手原理服务端处理客户端的TCP连接请求时,系统底层会采用两个队列,这两个队列分别是SYNC队列和ACCEPT队列。这两
大纲1.Disruptor的生产者源码分析2.Disruptor的消费者源码分析3.Disruptor的WaitStrategy等待策略分析4.Disruptor的高性能原因5.Disruptor高性能之数据结构(内存预加载机制)6.Disruptor高性能之内核(使用单线程写)7.Disruptor高性能之系统内存优化(内存屏障)8.Disruptor高性能之系统缓存优化(消除伪共享)9.Dis
大纲1.并发类容器2.volatile关键字与内存分析3.Atomic系列类与UnSafe类4.JUC常用工具类5.AQS各种锁与架构核心6.线程池的最佳使用指南1.并发类容器(1)ConcurrentMap(2)CopyOnWrite容器(3)ArrayBlockingQueue(4)LinkedBlockingQueue(5)SynchronousQueue(6)PriorityBlockin
大纲1.Disruptor简介2.Disruptor和BlockingQueue的压测对比3.Disruptor的编程模型4.Disruptor的数据结构与生产消费模型5.RingBuffer + Disruptor + Sequence相关类6.Disruptor的WaitStrategy消费者等待策略7.EventProcessor + EventHandler等类8.Disruptor的运行
大纲1.Seata XA分布式事务案例及AT与XA的区别2.Seata XA分布式事务案例的各模块运行流程3.Seata使用Spring Boot自动装配简化复杂配置4.全局事务注解扫描组件的自动装配5.全局事务注解扫描器的核心变量与初始化6.全局事务注解扫描器创建AOP代理7.全局事务降级检查开启与提交事务的源码8.Seata Server故障时全局事务拦截器的降级处理9.基于HTTP请求头的全
大纲1.Seata Saga案例简介2.Seata Saga案例的状态机定义分析3.Seata Saga分布式事务与状态机关系4.Seata Saga案例的Dubbo服务调用配置分析5.Seata Saga案例的状态机数据库和工程启动6.基于数据库的状态机配置实例的初始化7.状态机配置实例中包含的一些关键组件8.默认的状态机配置类的初始化9.状态机定义的仓储组件解析状态机定义文件10.状态机定义的
大纲1.Seata TCC分布式事务案例配置2.Seata TCC案例服务提供者启动分析3.@TwoPhaseBusinessAction注解扫描源码4.Seata TCC案例分布式事务入口分析5.TCC核心注解扫描与代理创建入口源码6.TCC动态代理拦截器TccActionInterceptor7.Action拦截处理器ActionInterceptorHandler8.Seata TCC分布式
大纲1.Seata的Resource资源接口源码2.Seata数据源连接池代理的实现源码3.Client向Server发起注册RM的源码4.Client向Server注册RM时的交互源码5.数据源连接代理与SQL句柄代理的初始化源码6.Seata基于SQL句柄代理执行SQL的源码7.执行SQL语句前取消自动提交事务的源码8.执行SQL语句前后构建数据镜像的源码9.构建全局锁的key和UndoLog
大纲1.Seata开启分布式事务的流程总结2.Seata生成全局事务ID的雪花算法源码3.生成xid以及对全局事务会话进行持久化的源码4.全局事务会话数据持久化的实现源码5.Seata Server创建全局事务与返回xid的源码6.Client获取Server的响应与处理的源码7.Seata与Dubbo整合的过滤器源码1.Seata开启分布式事务的流程总结(1)Seata分布式事务执行流程(2)开
大纲1.Seata Server的启动入口的源码2.Seata Server的网络服务器启动的源码3.全局事务拦截器的核心变量4.全局事务拦截器的初始化源码5.全局事务拦截器的AOP切面拦截方法6.通过全局事务执行模版来执行全局事务7.获取xid构建全局事务实例与全局事务的传播级别8.全局事务执行模版根据传播级别来执行业务9.全局事务执行模版开启事务+提交事务+回滚事务10.Seata Serve
大纲1.全局事务注解扫描器继承的父类与实现的接口2.全局事务注解扫描器的核心变量3.Spring容器初始化后初始化Seata客户端的源码4.TM全局事务管理器客户端初始化的源码5.TM组件的Netty网络通信客户端初始化源码6.Seata框架的SPI动态扩展机制源码7.向Seata客户端注册网络请求处理器的源码8.Seata客户端的定时调度任务源码9.Seata客户端初始化Netty Bootst
大纲1.seata-samples的配置文件和启动类2.seata-samples业务服务启动时的核心工作3.seata-samples库存服务的连接池配置4.Seata对数据库连接池代理配置的分析5.Dubbo RPC通信过程中传递全局事务XID6.Seata跟Dubbo整合的Filter(基于SPI机制)7.seata-samples的AT事务例子原理流程8.Seata核心配置文件file.c
大纲1.Seata分布式事务框架简介2.Seata AT模式实现分布式事务的机制3.Seata AT模式下的写隔离机制4.Seata AT模式下的读隔离机制5.官网示例说明Seata AT模式的工作机制6.Seata TCC模式的介绍以及与AT模式区别7.Seata Saga模式的介绍8.单服务多个库的分布式事务支持9.Seata的AT、TCC、Saga三种模式对比10.基于RocketMQ的可靠
大纲10.gRPC客户端初始化分析11.gRPC客户端的心跳机制(健康检查)12.gRPC服务端如何处理客户端的建立连接请求13.gRPC服务端如何映射各种请求与对应的Handler处理类14.gRPC简单介绍10.gRPC客户端初始化分析(1)gRPC客户端代理初始化的源码(2)gRPC客户端启动的源码(3)gRPC客户端发起与服务端建立连接请求的源码(1)gRPC客户端代理初始化的源码Naco
大纲7.服务端对服务实例进行健康检查8.服务下线如何注销注册表和客户端等信息9.事件驱动架构源码分析7.服务端对服务实例进行健康检查(1)服务端对服务实例进行健康检查的设计逻辑(2)服务端对服务实例进行健康检查的源码(3)服务端检查服务实例不健康后的注销处理(1)服务端对服务实例进行健康检查的设计逻辑一.首先会获取所有客户端的Connection连接对象Connection连接对象里有个属性叫la
大纲5.服务变动时如何通知订阅的客户端6.微服务实例信息如何同步集群节点5.服务变动时如何通知订阅的客户端(1)服务注册和服务订阅时发布的客户端注册和订阅事件的处理(2)延迟任务的执行引擎源码(3)处理客户端注册和订阅事件时发布的服务变动和服务订阅事件的处理(1)服务注册和服务订阅时发布的客户端注册和订阅事件的处理一.服务注册Nacos客户端注册服务实例时,Nacos服务端会发布ClientReg
大纲1.Nacos 2.x版本的一些变化2.客户端升级gRPC发起服务注册3.服务端进行服务注册时的处理4.客户端服务发现和服务端处理服务订阅的源码分析1.Nacos 2.x版本的一些变化变化一:客户端和服务端的交互方式由HTTP升级为gRPCNacos 1.x服务端会提供一系列的HTTP接口供客户端请求调用,Nacos 2.x服务端会定义一些列Handler处理类来处理客户端的gRPC请求。Na
大纲1.关于Nacos配置中心的几个问题2.Nacos如何整合SpringBoot读取远程配置3.Nacos加载读取远程配置数据的源码分析4.客户端如何感知远程配置数据的变更5.集群架构下节点间如何同步配置数据1.关于Nacos配置中心的几个问题问题一:SpringBoot项目启动时如何加载Nacos服务端存储的配置数据?问题二:Nacos配置中心有很多类型的配置数据,它们之间的优先级是怎样的?问
大纲6.CAP原则与Raft协议7.Nacos实现的Raft协议是如何写入数据的8.Nacos实现的Raft协议是如何选举Leader节点的9.Nacos实现的Raft协议是如何同步数据的10.Nacos如何实现Raft协议的简版总结6.CAP原则与Raft协议(1)CAP分别指的是什么(2)什么是分区以及容错(3)为什么不能同时满足CAP原则(4)Raft协议定义节点的三种状态(5)Raft协议
大纲1.Nacos集群的几个问题2.单节点对服务进行心跳健康检查和同步检查结果3.集群新增服务实例时如何同步给其他节点4.集群节点的健康状态变动时的数据同步5.集群新增节点时如何同步已有服务实例数据1.Nacos集群的几个问题问题一:在单机模式下,Nacos服务端会开启心跳健康检查的定时任务。那么在集群模式下,是否有必要让全部集群节点都执行这个定时任务?问题二:Nacos服务端通过心跳健康检查的定
大纲5.服务发现—服务之间的调用请求链路分析6.服务端如何维护不健康的微服务实例7.服务下线时涉及的处理8.服务注册发现总结5.服务发现—服务之间的调用请求链路分析(1)微服务通过Nacos完成服务调用的请求流程(2)Nacos客户端进行服务发现的源码(3)Nacos服务端进行服务查询的源码(4)总结(1)微服务通过Nacos完成服务调用的请求流程按照Nacos使用简介里的案例:订单服务和库存服务
大纲1.客户端如何发起服务注册 + 发送服务心跳2.服务端如何处理客户端的服务注册请求3.注册服务—如何实现高并发支撑上百万服务注册4.内存注册表—如何处理注册表的高并发读写冲突1.客户端如何发起服务注册 + 发送服务心跳(1)Nacos客户端项目启动时为什么会自动注册服务(2)Nacos客户端通过什么方式注册服务(3)Nacos客户端如何发送服务心跳(1)Nacos客户端项目启动时为什么会自动注
大纲1.Nacos的定位和优势2.Nacos的整体架构3.Nacos的配置模型4.Nacos内核设计之一致性协议5.Nacos内核设计之自研Distro协议6.Nacos内核设计之通信通道7.Nacos内核设计之寻址机制8.服务注册发现模块的注册中心的设计原理9.服务注册发现模块的注册中心的服务数据模型10.服务注册发现模块的健康检查机制11.配置管理模块的配置一致性模型12.Zookeeper、
大纲1.Nacos生产集群Web端口与数据库配置2.Nacos生产集群的Distro协议核心参数3.Nacos打通CMDB实现跨机房的就近访问4.Nacos基于SPI动态扩展机制来获取CMDB的数据5.基于Nacos SPI机制开发CMDB动态扩展6.Nacos基于CMDB来实现多机房就近访问7.Nacos生产集群Prometheus + Grafana监控8.Nacos生产集群的其他一些配置参数
大纲1.Nacos集群模式的数据写入存储与读取问题2.基于Distro协议在启动后的运行规则3.基于Distro协议在处理服务实例注册时的写路由4.由于写路由造成的数据分片以及随机读问题5.写路由 + 数据分区 + 读路由的CP方案分析6.基于Distro协议的定时同步机制7.基于Distro协议的心跳校验下的数据同步补偿机制8.基于Raft协议实现的弱CP模式9.Nacos集群模式下的looku
大纲1.Nacos的在服务注册中心 + 配置中心中的应用2.Nacos 2.x最新版本下载与目录结构3.Nacos 2.x的数据库存储与日志存储4.Nacos 2.x服务端的startup.sh启动脚本5.Dubbo + Nacos微服务RPC调用开发示例6.Nacos对临时与持久化服务实例的健康检查机制7.Nacos保护阈值机制防止高并发下出现服务雪崩8.Nacos保护阈值机制开启后的CAP问题
大纲1.漏桶算法的实现对比(1)普通思路的漏桶算法实现(2)节省线程的漏桶算法实现(3)Sentinel中的漏桶算法实现(4)Sentinel中的漏桶算法与普通漏桶算法的区别(5)Sentinel中的漏桶算法存在的问题2.令牌桶算法的实现对比(1)普通思路的令牌桶算法实现(2)节省线程的令牌桶算法实现(3)Guava中的令牌桶算法实现(4)Sentinel中的令牌桶算法实现(5)Sentinel中
大纲1.关于限流的概述2.高并发下的四大限流算法原理及实现3.Sentinel使用的设计模式总结1.关于限流的概述保护高并发系统的三把利器:缓存、降级和限流。限流就是通过限制请求的流量以达到保护系统的目的,比如秒杀抢购。具体就是对并发请求进行限速,或对一个时间窗口内的的请求进行限速,一旦达到限制速率就会拒绝服务或进行流量整形。常用的限流方式:一.限制总请求数如数据库连接池、线程池。二.限制瞬时并发
Copyright © 2005-2025 51CTO.COM 版权所有 京ICP证060544号