摘要:1 背景 像我们去面试一些大公司的时候,就会遇到一些关于缓存的问题。可能很多同学都是接触过,多多少少了解一些,但是如果没有好好记录这些内容,不熟练精通的话,在真正面试的时候,就很难答出来了。 在我们的平常的项目中多多少少都会使用到缓存,因为一些数据我们没有必要每次查询的时候都去查询到数据库。 特别是 阅读全文
posted @ 2019-10-24 21:34 久伴成忆 阅读(483) 评论(2) 推荐(0) 编辑
摘要:布隆过滤器 (Bloom Filter)是由布隆(Burton Howard Bloom)在1970年提出的。loom Filter是一种空间效率很高的随机数据结构,它实际上是由一个很长的二进制向量和一系列随机映射函数组成,布隆过滤器可以用于可以快速且空间效率高的判断一个元素是否属于一个集合;用来实 阅读全文
posted @ 2020-10-15 15:17 久伴成忆 阅读(10) 评论(0) 推荐(0) 编辑
摘要:PHP性能优化小技巧: 1. foreach效率更高,尽量用foreach代替while和for循环。2. 循环内部不要声明变量,尤其是对象这样的变量。3. 在多重嵌套循环中,如有可能,应当将最长的循环放在内层,最短循环放在外层,从而减少cpu跨循环层的次数,优化程序性能。4. 用单引号替代双引号引 阅读全文
posted @ 2020-10-10 17:01 久伴成忆 阅读(12) 评论(0) 推荐(0) 编辑
摘要:Redis-高并发代言词,为什么做分布式要Redis? 绝大部分写业务的程序员,在实际开发中使用 Redis 的时候,只会 Set Value 和 Get Value 两个操作,对 Redis 整体缺乏一个认知。这里对 Redis 常见问题做一个总结,解决大家的知识盲点。 1、为什么使用 Redis 阅读全文
posted @ 2020-10-08 13:57 久伴成忆 阅读(19) 评论(0) 推荐(0) 编辑
摘要:大流量处理-深入分库分表实战 背景 我们先来看一下业务的一个发展情况,由我们最开始的单表,发展到单表分表,在因为数据量得增加我们不得不到了分库分表。当然这些都是符合一个大公司的发展方向的。很少会有业务一开始就会设计为分库分表,虽说这样会减少后续的坑,但部分公司刚开始都是以业务为主。直到业务发展到单表 阅读全文
posted @ 2020-09-15 21:51 久伴成忆 阅读(35) 评论(0) 推荐(0) 编辑
摘要:架构师呕心沥血的成长之路:单体架构演变成分布式架构 一、前言 随着互联网时代的发展,之前的大型机架构很显然由于高成本、难维护等原因渐渐地变得不再那么主流了,替代它的就是当下最火的分布式架构,从大型机到分布式,经历了好几个阶段,我们弄明白各个阶段的架构,才能更好地理解和体会分布式架构的好处,那么我们就 阅读全文
posted @ 2020-09-03 14:16 久伴成忆 阅读(70) 评论(0) 推荐(0) 编辑
摘要:RabbitMQ高级特性都不会,凭什么要涨薪? RabbitMQ高级特性 (1)ACK(confirm机制) (2)如何保证消息百分百投递成功 (3)幂等性 (4)return机制 (5)限流 (6)重回队列 (7)TTL (8)死信队列 高级特性: 1. ACK(confirm机制) 1.1 什么 阅读全文
posted @ 2020-08-27 13:40 久伴成忆 阅读(19) 评论(0) 推荐(0) 编辑
摘要:B+Tree原理及mysql的索引分析 一、索引的本质 MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。 我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设 阅读全文
posted @ 2020-04-22 21:57 久伴成忆 阅读(137) 评论(0) 推荐(0) 编辑
摘要:首先我们先了解一下递归函数: 递归函数在语言学习的时候会单独拿出来学习,因为它非常常用,本质上来讲递归函数就是调用自己的函数。 举个例子: <?php function test(){ static $a=0; if($a<10){ $a++; test(); } echo $a."<br/>"; 阅读全文
posted @ 2020-04-03 14:38 久伴成忆 阅读(62) 评论(0) 推荐(0) 编辑
摘要:只要用缓存,就可能会涉及到缓存与数据库双存储双写,你只要是双写,就一定会有数据一致性的问题,那么你如何解决一致性问题? 面试题剖析 一般来说,如果允许缓存可以稍微的跟数据库偶尔有不一致的情况,也就是说如果你的系统不是严格要求 “缓存+数据库” 必须保持一致性的话,最好不要做这个方案,即:读请求和写请 阅读全文
posted @ 2020-03-27 14:53 久伴成忆 阅读(108) 评论(0) 推荐(0) 编辑
摘要:Kafka是大数据领域无处不在的消息中间件,目前广泛使用在企业内部的实时数据管道,并帮助企业构建自己的流计算应用程序。 Kafka虽然是基于磁盘做的数据存储,但却具有高性能、高吞吐、低延时的特点,其吞吐量动辄几万、几十上百万。 但是很多使用过Kafka的人,经常会被问到这样一个问题,Kafka为什么 阅读全文
posted @ 2020-03-24 14:42 久伴成忆 阅读(497) 评论(0) 推荐(0) 编辑