分库分表是为了解决单击数据库的瓶颈问题。 单击数据库瓶颈 在一台服务器中,PHP、Nginx 和数据库都安装与此,所以随着业务量增加,磁盘、内存都是有上限的。 资源不足 性能不足 并发数 什么是分库分表? 分库:把一个数…
【转载】hash 索引和 B+树索引的区别
B+树索引 B+树首先是有序结构,为了不至于树的高度太高,影响查找效率,在叶子节点上存储的不是单个数据,提高了查找效率; 为了更好的支持范围查询,B+树在叶子节点冗余了非叶子节点数据,为了支持翻页,叶子节点之间通过指针相…
【原创】二叉树、红黑树、B树、B+树总结
二叉树 在计算机科学中,二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”和“右子树”,左子树和右子树同时也是二叉树。 二叉排序树 二叉排序树又叫二叉查找树或者二叉搜索树,它首先是一个二叉树,而且必须满足下…
【转载】超卖、库存问题
在做秒杀类的程序时,最常见的就是超卖问题。产生原因如下: 解决方法 使用 Redis,可提升速度 对数据进行限制,可采取乐观锁、悲观锁或 lua 脚本 悲观锁与乐观锁 可参见:https://zhuanlan.zhihu…
【转载】中文文案排版规范
转自:https://learnku.com/docs/writing-docs/typography/3957 论排版的重要性 对于技术人来讲,技术文章就是我们的门面。想了解一个技术人的能力,或者潜力,可以从他的博客文…
【转载】workman 和swoole 有哪些区别和异同
转自:https://zhuanlan.zhihu.com/p/93016619 workerman和swoole在现阶段很受争议,有时间你得认识认识,不然你就不是混php圈子的。swoole是使用C语言实现的socke…
【转载】Windows 10 配置 docker lnmp 开发环境
转自:https://learnku.com/articles/59764 https://learnku.com/articles/22493
【原创】TP6 的使用
安装 composer create-project topthink/think tp 运行 在根目录下运行 php think run 之后访问 http://localhost:8000/ 请求流程
【原创】TP6 和 TP5.1 的区别
TP5.1 中的 thinkphp 文件夹在 TP6 中移动到了 vendor 文件夹中(vendor/topthink/framework/src)。 TP5.1 中的 application 在 TP6 中变为了 a…
【原创】PHP 设计模式之门面模式
什么是门面模式 门面模式又称为外观模式,门面模式的作用是为多个子类提供一个统一的高级口,隐藏系统的复杂度,可以提高系统的灵活性和安全性,不会暴露系统的复杂性。 客户端进行访问的时候不需要在意子类的复杂度和实现过程,只需要…
【转载】MongoDB 与 MySQL 的适用场景
MySQL 是关系型数据库,MongoDB 是文档数据存储。 性能和速度 MongoDB 可以比 MySQL 更快地接受更多结构化或非结构化数据。 MongoDB 对于非结构化数据具有更快速、更灵活的性能。 安全性 即便…
【原创】InnoDB 和 MyISAM 对比
InnoDB 支持事务,MyISAM 不支持 InnoDB 支持外键,MyISAM 不支持 MySQL5.5.5 之后,InnoDB 是默认引擎 InnoDB 不支持全文索引 InnoDB 支持行锁,MyISAM 支持表…
【原创】MySQL 性能优化
MySQL 性能优化 配置优化 从服务端来说,可以增加服务端的可用连接数 从客户端来说,可以减少从服务端获取的连接数 连接池 缓存 架构优化 在应用系统的并发数非常大的情况下,如果没有缓存,会造成两个问题:一方面是会给数…
【原创】Swoole 的应用
Swoole 的应用 创建 Server 构建 Server 对象 设置运行参数 注册事件回调参数 启动服务器 $server = new \Swoole\Server($host, $port = 0, $mode =…
【原创】Swoole 是什么?
Swoole 是 C 语言编写的一个扩展。 Http——编写一个简单的 Web Server TCP/UDP 编写一个消息接受处理系统 协程,相比线程更加稳定好用 Socket,通讯处理技术 可以异步和并发地处理请求 毫…
【转载】PHP 单例模式
转自:https://blog.csdn.net/sosemseo/article/details/106398224 什么是单例模式 单例模式是指整个应用中某个类只有一个对象实例的设计模式。具体来说,作为对象的创建方式…
【原创】使用 ClashX 进行科学上网
转自:https://instar.me/archives/84807ed.html 下载 ClashX 由于我的 Mac 是 M1 版本,需要下载 ClashX 的 pro 版本。 下载地址:https://paolu…
【转载】PHP8 新特性介绍
转自:https://www.w3cschool.cn/article/41824727.html 随着2020年11月26日开发者峰会的结束,php开发团队也宣布 PHP 8 正式发布。PHP8作为PHP语言的一个主版…
【转载】PHP7 新特性
转自:参考:http://cn.bing.com/?mkt=zh-CN PHP7.0 新特性 性能提升:PHP 7 的速度是 PHP 5.6 的两倍 标量类型和返回值类型声明 标量类型 函数、方法中的参数是可以加一个类型…
【转载】MySQL基础之索引、虚表视图和游标
转自:https://www.jianshu.com/p/5748793856e7 1 MySQL索引 MySQL索引分类:普通索引,唯一索引,主键索引 1.1 添加索引 1.1.1 普通索引 创建表时添加索引: cre…
MySQL 全文索引
创建全文索引(FULLTEXT INDEX) 创建表的同时创建全文索引 CREATE TABLE `article` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT …
【转载】SQL--contains的用法
转自:https://blog.csdn.net/penghao_1/article/details/86148217 1. 查询住址在北京的学生 SELECT student_id,student_name FROM …
【转载】MySQL模糊查询 结果按匹配度 排序
转自:https://blog.csdn.net/qq_19922839/article/details/120578815 我们在使用 MySQL 进行模糊查询的时候,受到默认排序的影响,我们会发现与查询关键字相似的记…
TP3 和 TP5 的区别
入口文件位置 TP3 的入口文件 index.php 在根目录下,TP5 的入口文件则在 public 目录下。 助手函数 去掉了M()、D()、C() 等函数,但保留了助手函数的概念,例如 M()=>db()、D…
【转载】关闭 Mac Office 的自动更新
转自:https://www.bilibili.com/read/cv17715618/ 如何让app不自启: 打开终端(可以按 command + 空格,输入enter 回车) 执行:cd /Library/Appli…
【转载】Mac 下载
https://www.macwk.com/ https://www.macdo.cn/ https://xclient.info/ https://adzhp.net
【转载】npm run dev 的时候究竟做了什么
转自 https://blog.csdn.net/web2022050901/article/details/125165316 引言 npm run dev命令应该是我们工作当中最常使用的命令,但是具体是如何运行的相信…
【转载】Java 获取 k8s 系统获取真实客户端 IP
转自:https://www.likecs.com/show-123200.html 总的概括来说获取IP的时候需要考虑的一下几点: 1、nginx等代理的IP 2、K8s中的IP 3、使用代理的情况 具体代码如下: {…
【转载】K8S的灰度发布、滚动更新、蓝绿发布
转自:https://blog.csdn.net/qq_42494960/article/details/119385952 一、简介 1.1灰度发布(金丝雀发布) 金丝雀发布一般是先发1台机器,或者一个小比例,例如2%…