- 博客(16)
- 收藏
- 关注
原创 证书颁发者证书过期 curl#60 The certificate issuer‘s certificate has expired
原因国外论坛说了原因大致是:Let’s Encrypt 's — 一个免费、自动化和开放的证书颁发机构,根证书“DST Root CA X3”已于2021 年 9 月 30 日到期。对于大多数实际用途而言,这无关紧要,因为 Let’s Encrypt 已经将其证书迁移到“ISRG Root X1”。它与新系统上的 ISRG Root X1 证书链接,而旧系统上的 ISRG Root X1 与 DST Root CA X3 交叉签名。但是,DST Root CA X3 到期会影响依赖与操作系统捆绑的旧可信
2021-11-02 15:43:44
7303
2
原创 laravel+JWT验证
环境配置安装 dingo/api 和 JWT通过 composer require 或者在项目 composer.json 添加 required 安装即可。环境配置dingo/api在 config/app.php 中的 providers 数组中添加 Dingo\Api\Provider\LaravelServiceProvider::class运行 php artisan vendor:publish --provider=“Dingo\Api\Provider\LaravelServ
2021-11-01 10:25:21
263
原创 laravel跨域问题
我们在用 laravel 进行开发的时候,特别是前后端完全分离的时候,由于前端项目运行在自己机器的指定端口 (也可能是其他人的机器) , 例如 localhost:8000 , 而 laravel 程序又运行在另一个端口,这样就跨域了,而由于浏览器的同源策略,跨域请求是非法的。其实这个问题很好解决,只需要添加一个中间件就可以了。1、新建一个中间件php artisan make:middleware CrossHttp2、书写中间件内容<?phpnamespace App\Http\Mid
2021-10-28 18:27:54
1059
原创 mysql数据库忘记密码解决方案
1、修改mysql配置文件my.cnfvi /etc/my.cnf在配置文件增加skip-grant-tables2、重启mysql服务service mysqld restart3、进入mysql数据库输入mysql -uroot4、修改密码use mysql;在password(’’)中填写需要修改的密码update mysql.user set authentication_string=password('123456') where user='root';
2021-08-18 10:22:09
180
原创 开发过程中的设计模式
1、设计模式的简介设计模式(Design pattern)代表了最佳实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临一般问题的解决方案。2、设计模式的类型根据设计模式的参考书Design Patterns - Elements of Reusable Object-Oriented Software(中文译名:设计模式 - 可复用的面向对象软件元素)中所提到的,总共有23种设计模式。这些模式可分为三大类:创建型模式(Creational Patterns)、
2021-06-10 10:27:20
293
原创 MYSQL数据库事务隔离(ACID)的四个级别
一、关于事务1、数据库支持事务,必须具备以下四个特性:原子性(Atomicity):原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。一致性(Consistency):一致性是指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行前和执行后都必须处于一致性状态。举个例子:拿转账来说,假设用户A和用户B两者的钱加起来一共是5000,那么不管A和B之间如何转账,转几次账,事务结束后两个用户的钱加起来应该还是5000,这就是事务的一致性。隔离性(IsoIation):隔
2021-06-07 18:15:57
268
原创 数据结构中二叉树、红黑树、B&B+树
前言数据在计算机存储结构主要顺序为顺序存储结构、链式存储结构、索引存储结构、散列存储结构,其中链式存储结构常见的示例是链表与树,链式存储结构主要有以下特点:优点:逻辑相邻的节点物理上不必相邻,插入、删除灵活,只需改变节点中的指针指向缺点:存储空间利用率低。需通过指针维护节点之间的逻辑关系,查找效率比顺序存储慢度:当下节点下的子节点个数1、二叉树1、定义二叉树是每个节点最多有两个子树的树结构,左侧子树节点称为左子树,右侧子树节点称为右子树。每个节点最多有2个子节点的树(即每个定点的度小于3)。
2021-05-20 18:24:11
1259
原创 数据库索引的设计与优化(一)
1、索引的原理首先要先了解索引是什么,例如这样一个查询:select * from table1 where id=10000。如果没有索引,必须遍历整个表,直到ID等于10000的这一行被找到为止;有了索引之后(必须是在ID这一列上建立的索引),即可在索引中查找。由于索引是经过某种算法优化过的,因而查找次数要少的多。可见,索引是用来定位的。2、索引的分类索引分为聚簇索引和非聚簇索引两种,聚簇索引是按照数据存放的物理位置为顺序的,而非聚簇索引则不同;聚簇索引能提高多行检索的速度,而非聚簇索引对于单行的
2021-05-12 17:49:17
602
原创 Redis 基础笔记
Redis 基础数据结构1、StringRedis 里的字符串是动态字符串,会根据实际情况动态调整。类似于 Go 里面的切片-slice,如果长度不够则自动扩容。扩容方法大致如下:当 length 小于 1M 的时候,扩容规则将目前的字符串翻倍;如果 length 大于 1M 的话,则每次扩容 1M,直到达到 512M。2、ListRedis 里的 List 是一个链表,由于链表本身插入删除比较快,但是查询的速率比较低,所以常常被用作异步队列。Redis 里的 List 设计非常厉害,当数据量比较
2021-05-07 18:21:17
111
原创 如何快速实现一个定时器
一、什么是定时器定时器(Timer)是一种在指定时间开始执行某一任务的工具(也有周期性反复执行某一任务的Timer)。它常常与延迟队列这一相关概念关联。业务场景:当订单一直处于未支付状态时,如何及时的关闭订单,并退还库存?如何定期检查处于退款状态的订单是否已经退款成功?新创建店铺,N天没有上传商品,系统如何知道该信息,并发送激活短信?上述问题最简单直接的办法就是定时去扫表。每个业务都要维护一个自己的扫表逻辑。当业务越来越多时,我们会发现扫表部分的业务逻辑非常类似。将这部分逻辑从具体的业务逻辑
2021-05-07 16:55:10
493
原创 阿里官方YUM源安装php环境
一、替换阿里yum源1、备份本地yum源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak2、下载阿里yum源文件(这里下载的是centos7的版本)wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo3、更新缓存yum makecache二、安装php环境1、这里安装的
2021-04-15 17:54:48
1160
1
原创 Docker容器中常见命令安装vim、ping、wget、ps
1、进入容器docker exec -ti 容器名 /bin/bash2、使用apt-get同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,获取到最新的软件包apt-get update安装vimapt-get install vim安装ping命令apt-get install iputils-ping安装wgetapt-get install wget安装psapt-get install proc
2021-04-01 15:11:05
3841
原创 Docker部署lnmp环境(基础版)
1、卸载旧的版本yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \
2021-03-31 11:14:16
279
1
原创 秒杀系统防止超卖解决方案
秒杀系统解决方案1、文件锁机制2、redis队列1、文件锁机制这是一种最简单的方案,就是根据代码运行的机制,在秒杀逻辑代码前$fb=fopen("lock.text");,由于同一个文件在同一时间只能打开一次,所以在未fclose($fb);关闭文件前,中间的代码不会因为过多的请求而重复执行。2、redis队列...
2021-03-30 15:37:56
1205
原创 linux服务器中压力测试工具的安装使用
安装httpd-tools测压工具yum -y install httpd-tools使用说明:ab -V //查看工具版本ab -n 请求数 -c 并发数 测试的url举个例子:ab -n 1000 -c 200 http://ceshi.com //表示对当前网址发送1000个请求,并发数为200...
2021-03-30 10:55:14
213
原创 Linux云服务器编译安装PHP环境
Linux云服务器编译安装PHP环境这里使用的是腾讯云的CentOS系统,版本为 CentOS 7.6 64位,服务器是刚买的,需要重新配置lnmp环境,首先是PHP环境(如果感觉麻烦的话可以考虑装一下宝塔面板等工具,可以快速搭建环境)一、PHP安装包下载在php官网 http://www.php.net/downloads.php 下载 php-7.2.30.tar.gz至 /usr/local/src 目录下解压并移动至 /usr/local/下,重命名为php7tar -zxf php-7.
2020-05-09 16:55:08
369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人