- 博客(9)
- 收藏
- 关注
原创 Redis事务异常
事务定义:原子性:整个事务中的所有操作,要么全部完成,要么全部不完成,不可能停滞在中间某个环节。事务在执行过程中发生错误,会被回滚到事务开始前的状态,就像这个事务从来没有执行过一样 一致性:在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏 隔离性:隔离状态执行事务,使它们好像是系统在给定时间内执行的唯一操作。如果有两个事务,运行在相同的时间内,执行 相同的功能,事务的隔离性将确保每一事务在系统中认为只有该事务在使用系统。这种属性有时称为串行化,为了防止事务操作间的混淆, 必须串行化或序列.
2021-12-13 14:43:23
798
原创 Redis雪崩,击穿,穿透理解及处理
雪崩 定义:大量请求无法在Redis缓存中进行处理,比如Redis挂了,请求发送到数据库层,导致数据库压力过大 原因分析:大量数据同时过期导致的请求无法处理转而请求数据库 Redis宕机 解决方案:针对原因一过期时间加随机值,即加随机1-5分钟内过期 服务降级,非核心业务不访问缓存直接返回空,繁忙或预定义信息,核心业务允许查询缓存,缓存缺失可以继续查询数据库 针对原因二...
2021-12-13 11:52:21
601
原创 laravel进阶学习之管道(pipelines)
简单理解 当一个laravel请求进来之后,把数据传递给一个任务队列,由任务队列按次序依次对数据进行加工处理。类似于剥洋葱,层层过滤,最后才会返回http请求。pipelines在laravel很多地方都使用过,比如前面在分析请求生命周期的时候就有一个方法sendRequestThroughRouter,也就是实例化内核的时候将请求发送到中间件组的时候,并将其发送到路由器如下:then方法中的作的事情就是把pips中存储的中间件依次调用carry方法处理,car...
2021-11-29 17:18:47
484
原创 laravel进阶学习之服务提供者
基本概念它的主要工作是使用「服务容器」实现服务容器绑定、事件监听器、中间件,甚至是路由的注册。除核心服务外,几乎所有的服务提供者都定义在配置文件config/app.php文件中的providers节点中。服务提供者的典型处理流程是,当接 Laravel 应用接收到 HTTP 请求时会去执行服务提供者的 register方法,将各个服务绑定到容器内;之后,到了实际处理请求阶段,依据使用情况按需加载所需服务,也就是用到才加载,这样能够很明显提升性能。一个服务提供...
2021-11-22 18:11:09
765
原创 laravel进阶学习之映射与依赖注入
上一篇简单介绍了容器与依赖注入,其实也带有工厂模式的意思在里面,实际laravel的依赖注入包含了许多的闭包与映射,继续看一下其底层的实现。 Ioc容器的自动解析依賴借助于 reflection api\reflection 类 php中方法的描述为...
2021-11-22 17:57:28
341
原创 laravel进阶学习之控制反转与依赖注入
控制反转依赖注入先做个简单的测试得到结果: 控制反转简单理解这就是一个简单的依赖,控制反转并不是一种方法,而是一种设计思想,laravel和Spring框架框架一样,不用纠结名词上的反转,解释就是传统的对象都是主动取赋予对象的属性,而框架内我们所做的只是操作容器,容器会自动的通过映射来查找需要的属性并进行赋予,对象只是被动的接受依赖对象,从对象属性的获取方式来看问题。...
2021-11-15 15:29:35
920
原创 laravel进阶学习之中间件
中间件一共分为三种1.全局中间件2.路由中间件3.中间件组全局中间件 顾名思义全局中间件件就是每次请求都会经过的中间件,具体的位置在 app/Http/Kernel.php的$middleware也就是在处理请求时的管道操作sendRequestThroughRouter里面底层的闭包pipes()lavavel的默认全局中间件做了什么操作可以自己进去看下,包括检测代理的标头,检测配置配置以查看 CORS 服务,请求携带的数据量,属性的名称处理,还有转换数据...
2021-11-09 18:11:51
1102
原创 laravel进阶学习之laravel生命周期
大致可分为三步1.加载依赖2.创建 Laravel 应用实例3.接收请求并响应加载依赖及生成实例部分一个请求进来之后由public/index.php开始也由public/index.php结束,直接打开该入口文件laravel8的版本生成项目之后相比5.5版本会多出几行代码 maintenance.php,这里的功能是检查网站是否开启了维护模式,是laravel8新特性可通过命里直接开启或关闭php artiso...
2021-11-07 23:17:47
1115
原创 laravel The requested URL was not found on this server
今天再次接触laravel 的一个项目,git克隆下来之后laragon搭好环境准备跑一下 进首页还是无异常的,但是进入自己定义的route就需要排查两个地方:1.apache 的rewrite_module 是否已经打开LoadModule rewrite_module modules/mod_rewrite.so2.public目录下是否有.htaccess 如没有需要新增,打开后如果为空需要填充数据<IfModule mod_rewrite.c> &...
2021-09-08 16:40:34
1068
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人