- 博客(19)
- 收藏
- 关注
原创 kafka(三)重平衡
历史文章:kafka(一)kafka的基础与常用配置文章目录一、kafka消费者组二、重平衡(Rebalance)2.1、重平衡触发条件2.2、重平衡策略2.2.1、Range 平均分配2.2.2、RoundRobin 轮询分配2.2.3、Sticky 粘性分配2.3、重平衡过程2.3.1、消费者组状态2.3.2重平衡过程2.4、避免重平衡一、kafka消费者组由消费者组成的存在一个或多个消费者实例成为消费者组,这些消费者实例共享一个igroup id。消费者组内的所有成员一起订阅某个主题的所有分
2021-10-21 22:58:40
2182
原创 kafka(二)分区、副本与副本间的数据同步
历史文章:kafka(一)kafka的基础与常用配置文章目录一、kafka的分区1.1、分区的基础概念1.2、生产者分区策略1.2.1、轮询策略 RoundRobinAssignor(默认)1.2.2、随机策略 Randomness1.2.3、按key分区策略 Key-ordering1.2.4、自定义分区策略二、kafka的副本2.1、副本的基础概念2.2、领导者副本(leader)与追随者副本(follower)2.3、In-sync Replicas(ISR)2.4、副本的数据同步过程2.4.1、
2021-10-06 22:39:15
1122
原创 kafka(一)kafka的基础与常用配置
文章目录一、kafka基础内容二、kafka 中重要的参数配置2.1、log.dirs2.2、unclean.leader.election.enable2.3、message.max.bytes2.4、request.required.acks = 0、1和-1(all)acks=0acks=1(默认)acks=-1/all2.5、min.insync.replicas一、kafka基础内容先了解下基础的概念主题(Topic)主题是承载消息的容器,我们发布与订阅的对象就是主题,在实际的应用中通常会
2021-09-21 23:15:45
1002
1
原创 DUBBO源码学习(六)服务的调用过程
文章目录一、服务调用的入口二、服务的请求过程三、dubbo的编码与解码四、服务的响应DUBBO源码学习(一)spi机制DUBBO源码学习(二)注册中心源码解析DUBBO源码学习(三)v2.7.8-服务的暴露过程DUBBO源码学习(四)服务引用的过程DUBBO源码学习(五)负载均衡策略一、服务调用的入口通过之前的服务引用的分析,可以知道服务在引用的时候最终会生成一个invoker,最终invoker的执行我们会通过InvokerInvocationHandler#invoker:public
2021-09-17 20:14:28
701
转载 DUBBO源码学习(五)负载均衡策略
文章目录一、简述二、源码分析2.1、加权随机算法:RandomLoadBalance2.2、 权随机算法:RandomLoadBalance2.3、最小活跃数负载均衡: LeastActiveLoadBalance2.4、ConsistentHashLoadBalance2.5、RoundRobinLoadBalanceDUBBO源码学习(一)spi机制DUBBO源码学习(二)注册中心源码解析DUBBO源码学习(三)v2.7.8-服务的调用过程DUBBO源码学习(四)服务引用的过程一、简述dub
2021-09-12 21:26:23
214
原创 DUBBO源码学习(四)服务引用的过程
DUBBO源码学习(一)spi机制DUBBO源码学习(二)注册中心源码解析DUBBO源码学习(三)v2.7.8-服务的调用过程本文基于dubbo-v2.7.8版本。一、服务引用的过程Dubbo 服务引用的时机是通过 Spring 容器调用 ReferenceBean 的 afterPropertiesSet 方法时引用服务。在引用的过程中,首先Spring 会调用 getObject 方法,并由该方法执行服务引用逻辑。服务的运用有三种,分别是引用本地服务(jvm)直连远程服务通过注册中心调
2021-09-05 23:04:52
442
原创 DUBBO源码学习(三)v2.7.8-服务的暴露过程
文章目录dubbo源码学习历史文章一、DUBBO服务暴露1.1、DUBBO容器的启动二、serviceConfig服务暴露2.1、dubbo服务配置初始化2.2、checkAndUpdateSubConfigs()2.3、doExport -> doExportUrls服务暴露2.4、doExportUrlsFor1Protocol根据不同协议暴露服务2.5、获取invoker2.6、远程服务暴露dubbo源码学习历史文章DUBBO源码学习(一)spi机制DUBBO源码学习(二)注册中心源码解析
2021-08-30 20:20:06
827
原创 DUBBO源码学习(二)注册中心源码解析
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar
2021-08-25 22:27:31
958
原创 DUBBO源码学习(一)spi机制
文章目录一、整体设计二、什么是spi2.1、spi在java中的使用2.2、spi在spring中的使用2.3、spi在dubbo中的使用三、Dubbo Spi 实现原理分析3.1、getExtension 方法获取拓展类对象3.2、getExtensionClasses获取所有的拓展类3.3、loadExtensionClasses加载拓展类四、自适应扩展@Adaptive一、整体设计这是从dubbo官网摘过来的图:图例说明:图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供
2021-08-18 23:33:17
273
原创 Spring Bean 的生命周期(创建过程)与Bean的循环依赖
文章目录一、spring bean 创建的入口二、实例化预处理三、Bean的创建3.1、不同scope的Bean的创建过程3.2单例模式的实例化过程3.2.1、实例化前的操作:InstantiationAwareBeanPostProcessor3.2.2、实例化Bean3.2.2.1、实例化bean的主要方法createBeanInstance3.2.2.2、obtainFromSupplier3.2.2.3、instantiateUsingFactoryMethod3.2.3、属性填充bean3.2.3
2021-08-14 23:37:38
251
原创 spring ioc容器创建过程-整体流程
文章目录一、spring ioc 创建总览二、BeanFactory和ApplicationContext三、初始化DefaultListableBeanFactory四、总结:前面写了四篇ioc容器的初始化过程,这篇文章就对ioc容器初始化做个总结:Spring ioc容器创建过程(1)BeanFactory初始化spring ioc容器创建过程(2)invokeBeanFactoryPostProcessorsspring ioc容器创建过程(3)registerBeanPostProcesso
2021-08-07 22:42:01
3331
原创 spring ioc容器创建过程(4)事件广播与注册监听
文章目录1、initMessageSource()2、initApplicationEventMulticaster()3、onRefresh()4、registerListeners()5、finishBeanFactoryInitialization(beanFactory)5.1、 DefaultListableBeanFactory#preInstantiateSingletons()6、finishRefresh()Spring ioc容器创建过程(1)BeanFactory初始化spring
2021-08-04 23:37:04
298
原创 spring ioc容器创建过程(3)registerBeanPostProcessors
文章目录一、前文回顾二、BeanPostProcessor三、BeanFactory注册BeanPostProcessor阶段3.1、AbstractApplicationContext#registerBeanPostProcessors(ConfigurableListableBeanFactory beanFactory)3.2、registerBeanPostProcessors四、总结一、前文回顾spring ioc容器创建过程(1)BeanFactory的创建spring ioc容器创建过
2021-08-01 23:05:54
225
原创 spring ioc容器创建过程(2)invokeBeanFactoryPostProcessors
文章目录一、BeanFactoryPostProcessors二、spring ioc启动时的处理1、AbstractApplicationContext#refresh()1.1、postProcessBeanFactory(beanFactory)1.2、invokeBeanFactoryPostProcessors(beanFactory)三、总结上文分析了spring ioc容器的初始化第一步,BeanFactory的初始化今天继续来分析BeanFactoryPostProcessors的初始化和
2021-08-01 00:10:33
189
原创 Spring ioc容器创建过程(1)BeanFactory初始化
一、ApplicationContextApplicationContext是spring继BeanFactory之外的另一个核心接口或容器,允许容器通过应用程序上下文环境创建、获取、管理bean。在Spring 中, BeanFactory 接口的各种实现负责bean实例化,为Spring 管理的bean提供依赖注入和生命周期支持。然而,作为BeanFactory接口的扩展, ApplicationContext 还提供其他有用的功能。ApplicationContext 的主要功能是提供一个更丰富的
2021-07-28 23:57:49
655
3
原创 SpringBoot启动过程(3)@SpringBootApplication注解
大家都知道springboot 在入口类会有个注解叫@SpringBootApplication注解,这其实是个组合的注解类spring boot通过此注解实现了自动装配:@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented//使用自定义注解时,如果注解在类上面子类会自动继承此注解。@Inherited@SpringBootConfiguration@EnableAutoConfiguration/
2021-07-18 00:11:40
217
原创 SpringBoot启动过程(2)SpringApplication#run方法之tomcat容器的启动
上一篇文章分析到spring ioc容器的启动,先来回顾一下:/*** spring ioc 容器 生命周期*/public void refresh() throws BeansException, IllegalStateException { synchronized(this.startupShutdownMonitor) { StartupStep contextRefresh = this.applicationStartup.start("spr
2021-07-11 23:07:02
299
原创 SpringBoot启动过程(1)SpringApplication#run方法之ioc容器的启动
SpringBoot启动过程(1)SpringApplication#run方法之ioc容器的启动通常我们在开发一个spring boot 项目的时候都会从这段代码开始:@SpringBootApplicationpublic class SpringbootLearnApplication { public static void main(String[] args) { SpringApplication.run(SpringbootLearnApplication.c
2021-07-08 23:45:23
323
原创 ETCD和Zookeeper的对比(一)
ETCD和Zookeeper的对比(一)文章目录ETCD和Zookeeper的对比(一)前言1、分布式一致性算法1.1、为什么需要一致性1.2、zab协议1.2.1 选主过程1.2.2 选主过程1.3、raft协议1.3.1选主过程1.3.2主从数据同步2、其他前言最近开发工作中使用到了etcd作为注册中心,简单的了etcd作为注册中心与我们常用的zookeeper有什么区别。1、分布式一致性算法1.1、为什么需要一致性为了高可用和数据安全起见,分布式的集群一般都是由几个节点构成。多节点证
2021-07-04 23:52:07
3690
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人