摘要: 在开始讲述原理的情况下,我们先来做个知识汇总,究竟什么是主从,为什么要搞主从,可以怎么实现主从,mysql主从同步的原理1、什么是主从其实主从这个概念非常简单主机就是我们平常主要用来读写的服务,我们称之为master(主人、主宰)从机就是主机进行的一个扩展,他一般不会主动用来读写,我们称之为slav 阅读全文
posted @ 2021-08-26 00:10 王若伊_恩赐解脱 阅读(478) 评论(0) 推荐(1) 编辑
摘要: 限流是啥?维基百科是这样解释的:在计算机网络中,频率限制被应用在控制网络接口收到或发送的请求频次,它可以被用来阻止dos攻击或者是网络爬虫。直白点说,就是限制服务收到或发出的请求频次,保证整体服务可以正常健康的使用。谈到这里有人会想,只要我服务处理的速度足够快,那么频次高点也没问题,而且我们做的系统 阅读全文
posted @ 2021-08-25 00:50 王若伊_恩赐解脱 阅读(384) 评论(2) 推荐(0) 编辑
摘要: 类加载过程本质上就是类加载器根据类的全限定名称去找到对应的class字节码文件内容,然后将字节码文件的内容加载到虚拟机方法区中的过程。所以我们大体上可以把类加载的过程分为三部分:1、加载,就是获取到class文件的内容2、链接,就是把相应的文件内容添加到虚拟机中,转变为虚拟机中的class对象,使虚 阅读全文
posted @ 2021-08-13 01:44 王若伊_恩赐解脱 阅读(135) 评论(0) 推荐(1) 编辑
摘要: 布隆过滤器是1970年由布隆提出的。他其实是一个很长的二进制向量外加一系列的随机函数函数来组成。 在正式说到布隆过滤器时,我们要先聊这样一个话题:在解决工程类问题时,很多问题的回答并不是只有这两种布尔状态:是 or 否而可能是这两种状态:一定没有 or 可能有亦或者可能是这两种状态:一定有 or 可 阅读全文
posted @ 2021-08-12 02:28 王若伊_恩赐解脱 阅读(444) 评论(0) 推荐(1) 编辑
摘要: C++为什么叫C plus plus?这是由于C++相当于继承C的语法后,增加了各方面的能力,所扩展出的一种新语法。在软件领域中 plus 有增加的味道。在这里B +树也一样,是B树的增强版。在学习B+树之前,最好是对B树有一定的了解。不了解的各位也没有关系,可以花费5分钟的时间读我的上一篇文章《数 阅读全文
posted @ 2021-01-22 14:46 王若伊_恩赐解脱 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 数据结构相对来说比较枯燥, 我尽量用最易懂的话,来把B树讲清楚。学过数据结构的人都接触过一个概念 二叉树。简单来说,就是每个父节点最多有两个子节点。为了在二叉树上更快的进行元素的查找,人们通过不断的改进,从而设计出一种高效搜索的树 平衡二叉查找树,也就是这个样子: 平衡二叉查找树的特性由于不是本文的 阅读全文
posted @ 2021-01-06 19:52 王若伊_恩赐解脱 阅读(320) 评论(2) 推荐(3) 编辑
摘要: 之前我们谈到过,数据库通过调整事务之间的隔离级别来提高事务的性能。那么接下来,我们来首先说说事务之间可能互相遇到的问题。 大家都知道事务只有提交后,才会真正的持久化到硬盘,倘若出现出现了回滚的操作,则事务所有操作的影响都会被回退掉。那么假若事务在执行过程中,其他事务读取到了当前的操作结果,但是当前事 阅读全文
posted @ 2021-01-04 19:59 王若伊_恩赐解脱 阅读(357) 评论(0) 推荐(1) 编辑
摘要: 如果你是一名后台程序员开发,那么你一定或多或少的接触过事务。因为相对于高并发,且业务有一定复杂性的系统来说,事务是一定需要的,而且是必须的。他可以帮助我们将若干不同的子任务当成一个整体来完成,以保证整个业务的正确性。举个简单的例子:在七夕这天,你给你的女票发了一个520红包对于钱款转移的这个过程来说 阅读全文
posted @ 2021-01-04 11:49 王若伊_恩赐解脱 阅读(539) 评论(0) 推荐(1) 编辑
摘要: 在做分布式系统开发时,我们经常会或多或少的听到CAP理论、或者是处理节点间数据一致性的问题。但CAP理论究竟是什么呢? CAP理论很简单,但却是很多软件设计的宏观指导,因此也有人将之称为架构师必须掌握的理论之一。鉴于理论的东西相对来说比较抽象而且繁琐,因此我们先举个例子:有一天你打王者荣耀连跪,于是 阅读全文
posted @ 2020-12-30 17:07 王若伊_恩赐解脱 阅读(546) 评论(0) 推荐(2) 编辑
摘要: 我们经常用postman模拟各种http请求。但是有时候因为业务需要,我们需要测试上传下载功能。其实postman也是很好支持这两种操作的。 一、上传文件: 1、打开postman 选择对应request类型,以及url 2、选择body,单击第一列的空白处,在第key列就会出现下拉选项 3、选择F 阅读全文
posted @ 2020-03-25 17:18 王若伊_恩赐解脱 阅读(10713) 评论(1) 推荐(2) 编辑
摘要: Lambda来源于希腊字母入,发音为 /'læmdə/对高数有所了解的人都知道λ用于声明一个数学逻辑系统,表示根据XX的输入参数,会返回某个Y结果。这正是编程语言中函数(方法)的意思。因此Lambda表达式在编程语言中说白了就是指的一个方法表达式。为什么要搞出这么一个东西来呢?这是由于我们的编程语言 阅读全文
posted @ 2019-04-03 01:00 王若伊_恩赐解脱 阅读(3195) 评论(0) 推荐(0) 编辑
摘要: 什么是动态代理呢?就是在java的运行过程中,动态的生成的代理类。(为了更熟悉的了解动态代理,你必须先熟悉代理模式,可点击设计模式之代理模式 阅读)我们知道java属于解释型语言,是在运行过程中,寻找字节码文件从而实现类加载的。但是字节码文件并不需要一定是硬盘中的class文件,也可以是来自网络、数 阅读全文
posted @ 2019-03-30 00:06 王若伊_恩赐解脱 阅读(1309) 评论(0) 推荐(2) 编辑
摘要: 代理模式英文名叫Proxy Pattern 看下Proxy的含义 [ˈprɑ:ksi] n.代表权;代理人,代替物;委托书; 主要表达的就是代表、代替、委托的意思。 我对这个模式的理解是这样的: 一个服务或者是一个功能,一个对象。由于某种自身或者外界的原因,不能直接暴露出来,而是需要另外一个对象做一 阅读全文
posted @ 2019-03-27 22:40 王若伊_恩赐解脱 阅读(636) 评论(0) 推荐(1) 编辑
摘要: 先来看看这个关键字是什么意思:volatile [ˈvɒlətaɪl] adj. 易变的,不稳定的; 从翻译上来看,volatile表示这个关键字是极易发生改变的。volatile是java语言中,最轻量级的并发同步机制。这个关键字有如下两个作用:1、任何对volatile变量的修改,java中的其 阅读全文
posted @ 2018-08-09 22:59 王若伊_恩赐解脱 阅读(1156) 评论(2) 推荐(6) 编辑
摘要: finalize()方法是Object类中定义的protect方法。每一个类都可以重写该方法,给出自己的实现。当类在被回收期间,这个方法就可能会被调用到。 为什么说可能?这是由于finalize()的调用时机甚至是否会被调用到都存在着太多的不确定性。基于这个原因,几乎所有的技术书籍及文章都不推荐开发 阅读全文
posted @ 2018-06-27 22:15 王若伊_恩赐解脱 阅读(1314) 评论(1) 推荐(1) 编辑