摘要:
内容收集于知乎,留作学习记录:https://zhuanlan.zhihu.com/p/35814539?spm=ata.21736010.0.0.2b08736byUyj3I 前言 Lucene 是一个基于 Java 的全文信息检索工具包,目前主流的搜索系统Elasticsearch和solr都是 阅读全文
摘要:
why: 当系统的数据量、服务体量达到一定规模后,就会衍生各种问题,例如:系统的可扩展性、系统的稳定性等。 what: 一般公司都会经历从业务优先,到系统跟进完善的阶段。例如:单系统 -> 垂直扩展、水平扩展(如:两地三中心)。 垂直扩展模式:把全站应用、数据库等划分为几个部分,分别放在不同的机房中 阅读全文
摘要:
why: 任何一个互联网系统,不论是淘宝,还是Google、Facebook,当发展到一定规模时,都会不可避免的触及到单点瓶颈。这里所说的“单点”,在系统的不同发展阶段表现不同。如下图: 在系统发展初期,服务器和应用单点最先成为瓶颈,解决的方法也很简单,加机器、拆应用;紧接着的数据库单点,解决起来就 阅读全文
摘要:
what: PDR模型: 保护-检测-响应( Protection-Detection-Response, PDR )模型是信息安全保障工作中常用的模型,是最早体现主动防御思想的一种网络安全模型。其思想是承认信息系统中漏洞的存在,正视信息系统面临的威胁,通过采取适度防护、加强检测工作、落实对安全事件 阅读全文
摘要:
what: Elastic 的底层是开源库 Lucene。但是,你没法直接用 Lucene,必须自己写代码去调用它的接口。Elastic 是 Lucene 的封装,提供了 REST API 的操作接口,开箱即用。 Node 与 Cluster: Elastic 本质上是一个分布式数据库,允许多台服务 阅读全文
摘要:
what: 布隆过滤器(Bloom Filter)是1970年由布隆提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。 错误率越低: - 位数组越长,控件占用较大; - 无偏hash函数越多,计算耗时较长; 优点: - 时间复杂度低,增加和查 阅读全文
摘要:
what: GTID (Global Transaction IDentifier) 是全局事务标识。它具有全局唯一性,一个事务对应一个GTID。唯一性不仅限于主服务器,GTID在所有的从服务器上也是唯一的。一个GTID在一个服务器上只执行一次,从而避免重复执行导致数据混乱或主从不一致。 GTID在 阅读全文
摘要:
what: object: 可以理解为“副本”; operation: 操作接口,由客户端调用,分为两种,读操作query和写操作update; query: 查询操作,仅查询本地副本; update: 更新操作,先尝试进行本地副本更新,若更新成功则将本地更新同步至远端副本; merge: upda 阅读全文
摘要:
what: 异地多活: 简单来说,就是在不同地域建立数据中心,每个数据中心在日常使用中都需要正常接入业务流量,做业务支撑。 异地多活,也属于分布式架构的系统。也绕不开CAP(参考:CAP详解) 异地多活优势: 1、可用性更强:(如下图)地域 1 机房故障,甚至地域 2 机房也故障,只要地域 3 的机 阅读全文
摘要:
what: 分布式架构的演变: 阶段1:单体应用架构:也就是我们在开始使用的一个Tomcat一个服务器做了所有的事情 阶段2:应用服务器和数据库服务器分离 阶段3:应用服务器集群 阶段4:应用服务器负载用户 阶段5:数据库读写分离 阶段6:添加搜索引擎减少读库压力 阶段7:添加缓存机制缓解数据库压力 阅读全文