自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 golang之interface底层实现过程

总结来说,Go 语言中的接口底层实现通过使用接口值和接口表来存储和管理具体类型与接口之间的关系。当一个具体类型被赋值给一个接口时,Go 语言会在运行时创建一个新的接口值,并将动态类型和动态值存储到这个新创建的接口值中。同时,Go 语言会根据具体类型所实现的方法集合,将接口表中对应的方法与接口中的方法进行绑定。在使用接口值时,Go 语言会根据动态类型和动态值来进行方法的调度。当调用接口中的方法时,Go 语言会根据动态类型在接口表中查找对应的方法实现,并执行该方法。

2024-09-09 15:34:34 447

原创 Mysql锁

Mysql锁表锁 Myisam、innodb支持表锁 锁的类型 读锁 语法:lock table 表名 read[,表名2 read]; 特性: 当链接A给table加了读锁之后,该链接只可以读table表,如果读取其他表的数据,会报错,如果想要读取需要给要读取的表通通加上读锁才可以,链接A不可以对表进行写入操作; 链接B只可以对加了读锁的表进行读操作,如果执行写入操作,会等待,直到链接A释放读锁 写锁 语法:lock table

2024-09-03 10:52:00 390

原创 mysql优化

然 而,如果在编译时建立访问计划,变量的值还是未知的,因而无法作为索引选择的输入项。不要以为 NULL 不需要空间,比如:char(100) 型,在字段建立时,空间就固定了, 不管是否插入值(NULL也包含在内),都是占用 100个字符的空间的,如果是varchar这样的变长字段, null 不占用空间。11.在使用索引字段作为条件时,如果该索引是复合索引,那么必须使用到该索引中的第一个字段作为条件时才能保证系统使用该索引,否则该索引将不会被使用,并且应尽可能的让字段顺序与索引顺序相一致。

2024-09-03 10:47:19 783

原创 PHP数据结构

双向链表是一个链接到两个方向的列表,只能从两头开始,不能从中间,而且分为单向链表,双向链表,以及循环链表,单向链表就是只能从一端进入从另一端出去,双向链表是从一端进入,可以从两端中的任何一端出去,循环链表就是跟名字的意思一样,一端开始,另一端结束的时候就会循环回去。此映射也可用作对象集。阵列就是数组,是以连续方式存储数据的结构, 可通过索引进行访问。队列,就是先进先出,第一个进入的第一个出来,主要用于群发短信,秒杀,以及群发邮件。PHP数据结构有六种形式:分别为双向链表,堆,栈,队列,映射,阵列;

2024-09-03 10:44:34 321

原创 php网站交互流程以及 垃圾回收机制

在5.3之后,PHP使用垃圾缓存机制的时候就解决了5.3之前的环形引用导致的垃圾,产生了一个新的算法,就是当一个值refcount增加,而且这个变量名还在,这个就不属于垃圾,如果值中的refcount减到零,并且这个变量名被释放掉了,这个也不属于垃圾,如果这个值中的refcount减少之后大于零,那么这个变量还不能被释放,那么这个就属于垃圾,就是对此 zval 中的每个元素进行一次 refcount 减1操作,操作完成之后,如果 zval 的 refcount=0, 那么这个 zval 就是一个垃圾。

2024-09-03 10:42:53 760

原创 Redis与memcache的区别

d)Set:集合有一个特性,value是唯一的,不可重复,redis内置支持取多个集合之。c)Hash:redis中的hash散列存储结构,存储购物车数据,其他需要类似数组键值。e)Zset:有序集合,在set的基础上增加了权重,用于统计各value的顺序,我们可。b)List:双向链表的结构,只可以从首尾插入取出数据,可以模拟队列与栈,比如实。可以利用唯一性的特性实现:用户名、订单、货号等等需要唯一性验证的场景。利用其对集合之间的运算实现:用户共同好友、商品推荐(购买了该商品的还。

2024-09-03 10:33:29 500

原创 gitlab社区版搭建

输入“cat /etc/gitlab/initial_root_password”查看初始化文件,Password:后即为初始密码。默认的站点 Url 配置项是:external_url 'http://gitlab.example.com。根据实际情况修改访问url 例如我本地搭建的访问地址是 http://192.168.1.160:8989。GitLab 默认配置文件路径是 /etc/gitlab/gitlab.rb。如果打开了防火墙 通过如下方式开放端口。修改完成后 刷新配置。

2024-07-18 11:19:58 2224

原创 保姆级docker搭建php7.4(redis+swoole+swoole_loader+dg)+redis+mysql5.7+nginx服务

最近在搭建swoole_loader时候发现扩展需要收费,通过不懈努力终于找到了免费的,如果想要切换swoole_loader其他版本的话,可以更换loader3.1.0到别的版本,如果版本没有就是没有,需要的版本需要自己去试。可以先不做调整,改完swoole_loader版本后,需要在/php7.4/php/php.ini文件中的swoole_loader.so名称做一下修改,容器运行起来后在做调整也可以。

2024-04-27 09:20:40 691 1

原创 hyperf热启动,热更新,更改代码自动重启

hyperf热启动

2023-02-22 17:12:11 901

原创 ssh免密登陆

想要两台服务器免密登陆s sh 可以直接使用一下操作ssh-copy-id -i ~/.ssh/id_rsa.pub 用户@ipssh 用户@ip即可直接免密访问

2021-07-07 11:53:35 208

原创 安装 docker以及 docker-compse

安装docker (即可安装指定版本)sudo yum install docker-ce-18.09.6-3.el7安装docker-composesudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-composesudo chmod +x /usr/local/bin/doc

2021-06-29 15:51:41 291 1

原创 Mac 安装 FinalShell

curl -o finalshell_install.sh http://www.hostbuf.com/downloads/finalshell_install.sh chmod +x finalshell_install.shsudo ./finalshell_install.sh

2021-04-23 16:06:57 1291

原创 mnmp

Mac 安装mnmp以及homebrew安装home brew安装nginx安装php安装redis安装pecl安装home brew/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"#输入2(清华大学)直接编译安装完成source /Users/wuhuan/.zprofilebrew -v#Homebrew 3.1.3-52-g813f751#Homebrew/hom

2021-04-22 16:42:28 451

原创 go环境安装和gowatch安装

go 安装

2020-07-14 10:23:31 2299 2

原创 mysql的主从配置

一、准备工作:注意1.主从数据库版本,数据保持一致主数据库:192.168.1.147从数据库:192.168.1.10二、主数据库master修改:1.修改mysql配置找到主数据库的配置文件my.ini,插入如下两行:[mysqld]log-bin=D:\myphp_www\PHPTutorial\MySQL\log\mysql-bin.log #开启二进制日志(要建立相对应的文件)server-id=1 #设置server-id,默认为12.重启mysql,创建用于同步的用户账号

2020-06-20 14:48:30 300

原创 php工具箱修改mysql版本

下载安装mysql5.7打开地址 https://downloads.mysql.com/archives/community/停止php工具箱服务,找到php工具箱里面的mysql,先复制做备份,然后将下载的mysql5.7解压到改文件夹下,然后改名和原来的mysql文件一样 ,进入mysql文件夹,新建data文件夹和 my.ini文件 my.ini内容如下(注意 basedir 和basedata根据你们自己的目录做相应修改,否则会报错)# For advice on how to chang

2020-06-20 12:03:09 472

原创 PHP的递归(子类找父类,父类找子类)

通过父类ID获取所有的子类function recursiveCategory($pid,$category){ $data = []; foreach ($category as $item){ if($item['pid']==$pid){ $arr['id'] = $item['id']; $arr['name'] = $item['name']; $cate = recursiveCategor

2020-06-19 12:02:30 1483

原创 linux PHP安装mongodb1.4

1.安装mongodb-1.4//首先切入usr/local/src cd /usr/local/src//下载安装包 wget https://pecl.php.net/get/mongodb-1.4.4.tgz//解压 tar -zxvf mongodb-1.4.4.tgz//进入mongodb-1.4.4 cd mongodb-1.4.4///phpize...

2020-05-08 11:48:09 176

原创 linux下PHP安装redis扩展

进入到 /usr/local/src/下拉取phpredis包wget https://github.com/phpredis/phpredis/archive/3.1.4.tar.gz解压包tar -zxvf 3.1.4.tar.gz进入 phpredis 目录cd phpredis-3.1.4php安装后的路径 /usr/local/php/bin/phpize源码编...

2020-04-24 11:58:36 154

原创 在Linux下安装redis

1.安装gcc redis是c语言编写的yum install gcc-c++2.下载redis安装包,在root目录下执行wget http://download.redis.io/releases/redis-5.0.4.tar.gz3.解压redis安装包tar -zxvf redis-5.0.4.tar.gz4.进入redis目录cd redis-5.0.45.编...

2020-04-23 15:54:22 141

原创 linux php安装swoole扩展

说明:操作系统:CentOSphp安装目录:/usr/local/phpphp.ini配置文件路径:/usr/local/php7/etc/php.ini1、安装swoole//进入到/usr/local/src/cd /usr/local/src//拉去swoole安装包wget https://github.com/swoole/swoole-src/archive/v1.9....

2020-04-23 15:03:07 496 1

原创 mysql 8.0忘记密码

编辑mysql 配置文件vim /etc/my.cnf#在文件里添加skip-grant-tables重启mysqlservice msyql restart登录mysql ,因为已经跳过了密码验证,所以不用输入密码直接回车就好了mysql -uroot -pMySQL5.7和之前的用户修改密码方式(三种方式):mysql -uroot -e "Set password=...

2020-04-23 14:32:48 170

原创 开发过程中git常用命令

安装git,首先去git官网下载git,https://git-scm.com/downloads,下载.exe格式并安装。首先拿到一个github的项目以后我们要先在window上生成一个ssh秘钥键入命令:ssh-keygen -t rsa -C “email@email.com”,"email@email.com"是你的github账号此时,你的C:\Users\admin.ssh这个...

2020-04-23 11:53:43 255

原创 源码编译lnmp

安装nginx第一步:关闭防火墙(两种方式)# 查看防火墙状态service iptables status | systemctl status firewalld # 停止防火墙service iptables stop | systemctl stop firewalld # 启动防火墙service iptables start | systemctl st...

2020-04-22 15:25:22 345

原创 gin框架安装以及gin的请求路由

window 上安装gin,需要先安装git ,go 环境,然后打开git,在你想要的地方安装go就可以比如在 /e/golang/gin 安装gin 在git命令行中输入mkdir -p $GOPATH/gin1然后没有报错的话就说明创建成功了,然后进入该文件下:cd $_ ,由于这个go modules和GOPATH可能是天生不和,如果配置了GOPATH的话,这个go modules...

2019-12-23 13:46:05 597

原创 浏览器如何与服务器交互

用户输入一个网址:www.baidu.com, 会把用户输入的网址变成ip,首先会查询本地的dns缓存,如果本地没有的话,会访问电脑的host文件,如果host没有的话,会访问线上的dns服务器,找到响应的ip地址以后,会通过ip查询linux服务器,linux默认访问接口为80端口,nginx默认监听的端口号为80,nginx是没有办法直接与PHP通讯的,这时就需要一个通讯协议:一开始是用cgi...

2019-12-10 14:10:31 218

原创 针对sql表操作的命令

ALTER TABLE:添加,修改,删除表的列,约束等表的定义。查看列:desc 表名;修改表名:alter table old_table rename to new_table;添加列:alter table 表名 add column 列名 varchar(30);删除列:alter table 表名 drop column 列名;修改列名MySQL: alter table 表名...

2019-12-10 13:45:06 176

转载 php生命周期

目录(?)[+]PHP的运行模式一切的开始 SAPI接口PHP的开始和结束阶段开始阶段有两个过程结束阶段分为两个环节单进程SAPI生命周期多进程SAPI生命周期多线程的SAPI生命周期Apache一般使用多进程模式prefork1、PHP的运行模式:PHP两种运行模式是WEB模式、CLI模式。无论哪种模式,PHP工作原理都是一样的,作为一种SAPI运行。1、当我们在终端敲入...

2019-02-22 09:48:36 139

转载 php 魔术方法

php类与对象的魔术方法1.__construct():构造函数,在实例化对象时被调用2.__destruct():解析函数。(不常用)3.__set():属性重载,在给不可访问属性赋值时,会被调用4.__isset():属性重载,当对不可访问属性调用isset()时,会被调用,返回布尔值5.__unset():属性重载,当对不可访问属性调用unset()时,会被调用6.__...

2019-02-19 11:10:01 106

原创 PHP实现递归并展示

<?php$arr = [ [ 'id' => 1, 'name' => '衣服', 'p_id' => 0 ], [ 'id' => 2, 'name' => '鞋子', 'p_id' => 0 ], [ '...

2019-02-14 13:53:44 275

转载 session一致性架构设计实践

一、缘起什么是session?服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文。Web开发中,web-server可以自动为同一个浏览器的访问用户自动创建session,提供数据存储功能。最常见的,会把用户的登录信息、用户信息存储在session中,以保持登录状态。什么是session一致性问题?只要用户不重启浏览器,每次http短连接请求,理论上服务...

2019-02-14 11:10:29 124

原创 nginx配置静态页访问

nginx配置静态页访问server {server_name static.naice.me; // 你的域名或者 ip # 域名:static.naice.me 这里用 “_” 代表获取匹配所有root /www/static-web/static-web; // 你的克隆到的项目路径index index.html; // 显示首页location ~* ^.+.(jpg|jpeg...

2019-02-14 10:51:14 232

保姆级docker搭建php7.4(redis+swoole+swoole-loader+dg)服务

保姆级docker搭建php7.4(redis+swoole+swoole-loader+dg)服务

2024-05-11

docker-compose搭建php7.4(swoole+swoole-loader+dg)+mysql5.7环境

docker-compose php7.4

2024-04-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除