摘要:1 背景 像我们去面试一些大公司的时候,就会遇到一些关于缓存的问题。可能很多同学都是接触过,多多少少了解一些,但是如果没有好好记录这些内容,不熟练精通的话,在真正面试的时候,就很难答出来了。 在我们的平常的项目中多多少少都会使用到缓存,因为一些数据我们没有必要每次查询的时候都去查询到数据库。 特别是 阅读全文
posted @ 2019-10-24 21:34 久伴成忆 阅读 (177) 评论 (2) 编辑
摘要:有没有好奇过redis、memcache等是怎么实现集群负载均衡的呢? 其实他们都是通过一致性hash算法实现节点调度的。 讲一致性hash算法前,先简述一下求余hash算法: hash(object)%N 一个缓存服务器宕机了,这样所有映射到这台服务器的对象都会失效,我们需要把属于该服务器中的缓存 阅读全文
posted @ 2019-12-06 20:59 久伴成忆 阅读 (3) 评论 (0) 编辑
摘要:umen 是 laravel 的衍生品,核心功能的使用和 laravel 都是一致的,但配置文件这一方面,lumen 在 laravel 的基础上增加了更简便的配置方式;lumen 采用了 DotEnv 来读取 .env 文件,并将其作为默认的配置方式;.env 在简化配置的同时,自然也不会有 .p 阅读全文
posted @ 2019-12-03 20:25 久伴成忆 阅读 (14) 评论 (0) 编辑
摘要:laravel自带了auth类和User模型来帮助我们很方便的实现用户登陆、判断。首先,先配置一下相关参数 app/config/auth.php: model 指定模型table 指定用户表这里我只是将table从users改成user,因为我个人在数据库命名方面喜欢用单数。 app/models 阅读全文
posted @ 2019-11-28 14:18 久伴成忆 阅读 (25) 评论 (0) 编辑
摘要:一、前言 数据库是每个系统都不可缺少的东西,里面记录了系统各种数据资料。但是如今的数据膨胀的时代,数据库性能不能满足我们的需要了。所以我们要对数据库进行强化,就用到了Mycat。 二、何为数据切分? 简单来说,就是指通过某种特定的条件,把我们存放在同一个数据库中的数据分散存储到多个数据库里。 数据的 阅读全文
posted @ 2019-11-26 14:25 久伴成忆 阅读 (12) 评论 (0) 编辑
摘要:只讨论一个域下的项目。 eg: a.xxx.com 和 b.xxx.com 来共享session 如果多个laravel项目共享SESSION要满足以下条件: SESSION可以存放在一个地方,eg:共用一个reids用户表为连接同一个数据库的用户表需要在同一域下操作步骤:以将session 存放到 阅读全文
posted @ 2019-11-25 21:37 久伴成忆 阅读 (15) 评论 (0) 编辑
摘要:laravel框架的文档中的例子很多时候不是很明显,所以想要真正的使用好这个框架,我们可以尝试去阅读它源码中的注释(不得不说laravel源码的注释还是很详细的)。 我们先来看一下laravel 的文件目录结构,上图为laravel官方给出的5.3版本目录结构,事实上laravel对目录结构的要求是 阅读全文
posted @ 2019-11-23 17:09 久伴成忆 阅读 (13) 评论 (0) 编辑
摘要:今天有朋友问到我如何用redis记录一亿用户的一天的登录状态,其实这个问题有两种需求,不同的需求可以使用不同的方法,如果说要做详细的统计的话,那么可以使用Redis位图 我们都知道8bit = 1b = 2^-10kb, bitmap就是通过最小的单位 bit来进行0或者1的设置,表示某个元素对应的 阅读全文
posted @ 2019-11-22 17:00 久伴成忆 阅读 (10) 评论 (0) 编辑
摘要:数据库分库分表 前言 今天有朋友问到了数据库分库分表,他们都说数据库达到了瓶颈,需要重构,但是毫无头绪,现在做个概念总结(期待后期的实操吗?) 会从以下几个方面说起: 第一部分:实际网站发展过程中面临的问题。 第二部分:有哪几种切分方式,垂直和水平的区别和适用面。 第三部分:目前市面有的一些开源产品 阅读全文
posted @ 2019-11-20 14:09 久伴成忆 阅读 (10) 评论 (0) 编辑
摘要:消息队列在高并发的场景是必备技能,随着我们的使用,在生产环境中的问题也是非常的多,比如:消息队列如何做到高可用呢?场景的中间件有很多种类型,在这里就准备常用的一些就用于分析处理。 1. RabbitMQ 的高可用性 RabbitMQ 是比较有代表性的,因为是基于主从(非分布式)做高可用性的,我们就以 阅读全文
posted @ 2019-11-18 22:17 久伴成忆 阅读 (8) 评论 (0) 编辑
摘要:基于redis分布式缓存实现 第一:Redis是什么? Redis是基于内存、可持久化的日志型、Key-Value数据库高性能存储系统,并提供多种语言的API. 第二:出现背景 数据结构(Data Structure)需求越来越多, 但memcache中没有, 影响开发效率 性能需求, 随着读操作的 阅读全文
posted @ 2019-11-15 14:34 久伴成忆 阅读 (24) 评论 (0) 编辑