
分布式学习
文章平均质量分 59
lzrrrrr
死宅,dota2爱好者
展开
-
垃圾什么时候回收?
[ JVM ] 垃圾什么时候回收?垃圾回收是面试中很重要的话题,整个垃圾回收的知识点也非常多,一整篇看下来的话可能会对一些细节不是很深刻,所以我个人喜欢把大问题拆分成小问题来集中处理。所以这一章我们集中来讨论Java中的垃圾什么时候回收,更为具体的话就是”垃圾回收的触发机制“,由于不同的垃圾回收算法的触发机制不一,所以我们分为两章来讨论。经典垃圾回收触发机制在G1出现以前,Gc分为两种,即YoungGc和FullGC(或者称为MinorGc和MajorGC)YoungGC顾名思义,YoungG原创 2021-08-27 20:21:05 · 604 阅读 · 0 评论 -
dubbo的那些高可用机制
dubbo的那些高可用机制作为经典的RPC框架,dubbo除了简单的服务远程调用功能,还会有哪些机制来保证它的高可用呢?1. 注册中心宕机由于我们的注册中心使用的是zookeeper、redis等,是有可能出现宕机情况的,那么dubbo中是如何在注册中心宕机的情况下继续服务的呢?本地缓存注册中心仅仅是提供了我们发现服务ip和port的功能,但如果我们已经知道了服务提供者的ip和port那么为什么还需要注册中心呢?所以,在每一次的服务发现之后,dubbo都会将服务对应的节点信息保存在本地缓存,原创 2021-08-27 20:19:34 · 256 阅读 · 0 评论 -
2021-08-27 dubbo整体框架
dubbo整体框架1. 业务层 business该层主要包含了我们的的业务代码是如何调用接口的。2. RPC层该层包含的是我们的服务注册与发现机制,分为如下几个子层config 初始化层 读取配置文件,完成dubbo的初始化proxy 代理层 为了使我们的远程调用像本地调用一样自然,我们可以使用代理模式来将服务的具体实现换为远程调用,dubbo为我们实现了两种代理模式 : javassist代理和jdk动态代理。Registry 注册中心层 该层包含了注册中心的具体实现,同理 dubb原创 2021-08-27 20:18:55 · 131 阅读 · 0 评论 -
分布式学习(三)用docker搭建zookeeper集群
分布式学习(三)用docker来搭建自己的zookeeper集群!前言作为一个穷学生,自然是租不起集群环境的,租不起咋办呢?一般都有两种解决方案来模拟集群搭建虚拟机来模拟集群: 这种方式能最大程度的模拟在单机下模拟集群,但是极其消耗磁盘,我果断放弃用端口号来模拟多主机:这种方式只是单纯的执行了多个zookeeper应用作为轻量级的虚拟机,我选择容器来模拟集群环境,有如下优点:部署方便: 制作一个镜像,然后创建容器即可,不用对每一个容器再安装环境轻量:一个容器也就占用几百兆注:原创 2021-04-10 12:11:42 · 243 阅读 · 0 评论 -
分布式学习(二)zookeeper原理
Zookeeper原理剖析1. 理论分析一个分布式架构的目标,就是保证集群内数据的一致性,那么zookeeper保证了什么样的数据一致性?又是怎么保证的呢?1.1 数据一致性数据一致性一般包含三种:强一致性、弱一致性和最终一致性强一致性所谓强一致性,就是集群内每一个节点读取时都要保证是最新的数据,所以要实现强一致性就会使得每一次写操作执行后集群都会被阻塞来进行同步,效率较低。弱一致性在弱一致性下,集群内每一次读写都不需要保证为最新。最终一致性最终一致性不保证每一次读写为最新,原创 2021-04-10 12:09:06 · 170 阅读 · 0 评论 -
分布式学习(一)初识分布式
分布式学习(一)初识分布式架构1. 网站应用的演进自互联网发展以来,网站应用的规模在不断的扩大,为了让网站应用的处理能力增强,单机的应用部署已经不能满足高并发、高可用的要求。同时,业务的拓展性也使得我们急需一个治理系统确保我们的架构有条不紊的进行。上图是互联网网站应用的演进,分为如下过程:单一应用架构在我们学习初期,往往只考虑整个系统的可用性,通常之开发单个应用,将所有的功能部署在一起,同时不需要太多成本,我们只需要关注数据的增删改查。垂直应用架构当访问量逐渐增大,同时为了整个系统原创 2021-04-10 12:08:01 · 387 阅读 · 0 评论