文章目录四种隔离级别的实现行锁MVCC实现 四种隔离级别的实现结论:对于RR和RC级别隔离,InnoDB使用MVCC+行锁实现。对于Serializable,使用表锁实现。具体实现:在可重复读(RR)的隔离级别下,事务启动时得到一个事务ID,整个事务存在期间只能看到小于等于这个事务ID的版本数据。(MVCC实现)在读提交(RC)的隔离级别下,每个SQL执行时,得到一个事务ID,这个SQL只能看到
/* 协程(coroutine)是一种程序运行方式,可以理解成 “协作的线程” 或 “协作的函数”。 协程既可以用单线程实现,也可以用多线程实现;前者是一种特殊的子例程,后者是一种特殊的线程。 */ /* 协程与子例程的差异: 传统的 “子例程” 采用堆栈式
# Hyperf MySQL 原理解析 在现代高性能的互联网应用中,数据库的访问和操作是至关重要的一环。Hyperf 是一个基于 PHP 的高性能框架,专为异步编程而设计,具有出色的性能和扩展性。在本篇文章中,我们将探讨 Hyperf 中的 MySQL 原理,结合代码示例和一些图表来帮助理解。 ## Hyperf MySQL 组件概述 HyperfMySQL 组件是基于 Swoole
原创 15天前
22阅读
# Hyperf MySQL负载均衡指南 在现代分布式应用中,数据库的负载均衡是提高系统性能和可靠性的重要手段。Hyperf作为一个高性能的PHP框架,提供了丰富的功能来支持负载均衡。本文将详细讲述如何在Hyperf中实现MySQL负载均衡。 ## 流程概览 首先,我们将概述整个实现过程,下面是一个简单的步骤表。 | 步骤 | 描述 |
原创 1月前
18阅读
 第一步:下载版本:http://dev.mysql.com/downloads/mysql 首先选择操作系统版本再选择MySql版本,我这边选择64位ZIP解压版 点击进来的页面如下,这边会有提示让你登录或者注册后再下载,直接登录或者注册后再下载都可以,这里也有一个跳过直接下载的,我点跳过 第二步:安装ZIP Archive版是免安装的。只要解压就行了。&
转载 1月前
27阅读
## 了解HyperfMySQL链接时长 在使用Hyperf框架时,我们经常需要访问MySQL数据库。但是,有时候我们会遇到一些链接时长较长的情况,这可能会影响我们的应用性能。本文将介绍如何使用Hyperf框架来查看MySQL链接时长,并探讨一些优化方法。 ### 什么是HyperfMySQL Hyperf是一个基于协程的高性能PHP应用框架,它支持依赖注入、AOP、ORM等功能。而My
这篇文章主要讲解了“在PhpStorm中hyperf调试的方法步骤是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在PhpStorm中hyperf调试的方法步骤是什么”吧!前言:大家在调试 Hyperf 的时候,可能总需要做一些服务的重启,重新点击 postman 的接口请求按钮,查看调试的结果是否正常,
写在前面最近,在开发一个分库分表中间件,由于功能需求,需要分析MySQL协议,发现网上对于MySQL协议分析的文章大部分都过时了,原因是分析的MySQL版本太低了。怎么办呢?于是乎,我便硬着头皮开始啃MySQL源码,经过两个多月的整理,终于总结出这篇MySQL协议。注:部分来自于互联网,感谢数据库大牛前辈们的默默付出!!交互过程MySQL客户端与服务器的交互主要分为两个阶段:握手认证阶段和命令执行
转载 2023-09-20 19:16:01
147阅读
## 解决 Hyperf 不能使用 MySQL 长连接问题 作为一名经验丰富的开发者,我们将教会刚入行的小白如何解决 Hyperf 框架不能使用 MySQL 长连接的问题。下面是解决问题的步骤以及每一步所需的代码和解释。 ### 步骤概览 | 步骤 | 描述 | | --- | --- | | 步骤一 | 安装 `swoole/ide-helper` 扩展包 | | 步骤二 | 配置 Hyp
原创 8月前
119阅读
路由配置文件 config/routes.php <?php use Hyperf\HttpServer\Router\Router; // 下面三种方式的任意一种都可以达到同样的效果 Router::get('/hello-hyperf', 'App\Controller\IndexControl ...
转载 2021-09-15 18:47:00
313阅读
2评论
控制器 app/Controller/IndexController.php <?php namespace App\Controller; use Hyperf\HttpServer\Annotation\AutoController; use Hyperf\HttpServer\Contract ...
转载 2021-09-17 12:43:00
359阅读
2评论
控制器 app/Controller/IndexController.php <?php namespace App\Controller; use Hyperf\HttpServer\Annotation\AutoController; use Hyperf\HttpServer\Contract ...
转载 2021-09-16 20:53:00
610阅读
2评论
Hyperf初体验 日志Hyperf,默认日志配置文件在 config/autoload/logger.php文件中.通过查看文件发现日志保存在/runtime/logs/hyperf.lo
原创 2023-05-05 17:30:24
535阅读
hyperf初体验路由1.闭包定义路由Router::get('/hello-hyperf',function (){ return 'Hello Hyperf';});2.标准路由三种写法Router::get('/hello-
原创 2023-05-05 17:30:58
221阅读
Cache代理类 Cache代理类 app/Utils/Cache.php <?php namespace App\Utils; use Hyperf\Utils\ApplicationContext; use Psr\SimpleCache\CacheInterface; class Cache ...
转载 2021-09-22 17:12:00
1250阅读
2评论
配置 config/autoload/logger.php <?php declare(strict_types=1); return [ 'default' => [ 'handler' => [ 'class' => Monolog\Handler\StreamHandler::class, ' ...
转载 2021-09-22 19:29:00
530阅读
2评论
添加配置(author) config/config.php <?php declare(strict_types=1); use Hyperf\Contract\StdoutLoggerInterface; use Psr\Log\LogLevel; return [ 'app_name' => ...
转载 2021-09-07 01:52:00
349阅读
2评论
redis MSQYL 输出刚刚执行的 SQL 自动管理数据库事务 你可以使用 Db 的 transaction 方法在数据库事务中运行一组操作。如果事务的闭包 Closure 中出现一个异常,事务
原创 2022-01-18 13:31:10
837阅读
theme: githubredis```$redis = \Yii::$app->redis;$res = $redis->get('ttp:00d716905c8ed414aa0103ba17815795');$res = unserialize($res);return $this->asJson($res);$redisKey = "yixinzu...
原创 2023-04-03 20:38:13
278阅读
# 使用 Hyperf 实现 MongoDB 数据库连接 ## 背景介绍 在现代的软件开发中,使用数据库存储数据是非常常见的。而 MongoDB 是一种流行的 NoSQL 数据库,具有高性能、灵活的特点。而 Hyperf 是一个基于 Swoole 的高性能 PHP 微服务框架。本文将介绍如何在 Hyperf 中实现与 MongoDB 数据库的连接。 ## 步骤概览 以下是实现 Hyperf
原创 4月前
180阅读
  • 1
  • 2
  • 3
  • 4
  • 5