自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

努力的Dom先生

PHP 开发技术笔记

  • 博客(54)
  • 资源 (1)
  • 收藏
  • 关注

原创 Deepin GoLang开发环境搭建

Deepin GoLang开发环境搭建安装包下载解压安装环境变量配置环境变量配置配置完成-测试安装包下载Go中文语言网下载地址解压安装#cd到下载目录 解压tar zxvf go***.linux-amd64.tar.gz# 移动解压后生成的go文件夹到 /usr/local/ 目录下并重命名为 go环境变量配置GOROOT——Go的安装目录GOROOT 为你的 Go 安装路径,系统自动配置,默认为/usr/local/goGOPATH——Go的个人工作空间GOPATH 允许设置多

2020-11-10 21:08:20 24

原创 免不用sudo 执行npm

sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

2020-09-07 18:45:58 27

原创 更改Ubuntu默认python版本(适用其他软件多版本控制)

查看你系统中安装了什么版本的python ls /usr/bin/python*查看是否已经有版本列表update-alternatives --list python只要没有版本列表 通常来说都会说update-alternatives: error: no alternatives for python讲python几个版本都放到列表中update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1up

2020-09-03 11:21:35 37

原创 deepin “E: 软件包 mysql-server 没有可安装候选”

deepin20 “E: 软件包 mysql-server 没有可安装候选”更改源更改阿里云源sudo apt-get install -y mysql-server mysql-client更改源这里出现这个问题主要是源问题所以更改源就可以了更改阿里云源进入阿里云的源官网复制这条东西sudo vim /etc/apt/sources.list把原来的内容前面都加上 # 然后末尾添加上复制的那条东西 保存退出即可sudo apt-get updatesudo apt-ge

2020-08-28 22:58:44 862

原创 rsync 信任ssh 免密传输文件

rsync 信任ssh 免密传输文件准备工作生成公私钥对将公钥复制到B服务器测试传输准备工作2台服务器A:192.168.1.100 传输用B:192.168.1.200 接收用2台服务器都需要有一个相同登录用户 这里都用root# 安装SSHsudo apt-get install openssh-server#启动ssh服务sudo service ssh star...

2019-11-12 13:16:52 296

原创 CentOS7搭建LNMP

CentOS7搭建LNMP首先更新系统软件yum update安装nginx# 添加源 也可以不要这个yum localinstall http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm # 安装yum install nginx # 启动se...

2019-11-12 12:09:10 76

原创 移动硬盘 安装 Ubuntu18 即插即用

移动硬盘 安装 Ubuntu18 即插即用U盘制作ubutnu安装启动盘磁盘分区安装Ubuntu注意 一注意 二U盘制作ubutnu安装启动盘这个没啥好说的,网上很多方法 比如用 UltraISO、Rufus磁盘分区为了避免安装系统时出现 “分配到/的分区/dev/sdb3开始于3584字节,使用磁盘的最小对齐,这可能造成非常差的性能” 这样的错误,可以提前在Windows系统下将分区创建...

2019-10-13 15:00:02 531 1

原创 Swoole 支持ThinkPHP5.1 非think-swoole

Swoole 支持ThinkPHP5.1 非think-swoole建立server端文件修改ThinkPHP源码git下来ThinkPHP5.1 然后进行修改建立server端文件在项目根目录中建立 /server/server.php<?php/** * Created by PhpStorm. * User: dom * Date: 19-2-23 * Time:...

2019-02-25 12:42:19 1896

原创 Swoole Coroutine协程 持续更新

Swoole Coroutine协程 持续更新redismysql协程可以理解为纯用户态的线程,其通过协作而不是抢占来进行切换。相对于进程或者线程,协程所有的操作都可以在用户态完成,创建和切换的消耗更低。Swoole可以为每一个请求创建对应的协程,根据IO的状态来合理的调度协程,这会带来了以下优势:开发者可以无感知的用同步的代码编写方式达到异步IO的效果和性能,避免了传统异步回调所带来的离...

2019-02-23 15:41:39 814 2

原创 Swoole Memory 持续更新

Swoole Memory 持续更新tableswoole_table的优势简单实现Swoole提供了7个内存操作的模块,在多进程编程中可以帮助开发者实现一些特殊的需求。Memory下的模块可以安全的用于异步非阻塞程序中,不存在任何IO消耗所有模块均为多进程安全的,无需担心数据同步问题Memory相关模块对象为有限资源,不可大量创建tableswoole_table一个基于共...

2019-02-23 13:58:25 222

原创 Swoole 进程Process 持续更新

Swoole 进程Process 持续更新Swoole\Process特性:简单实现拓展实现需要注意Process进程在系统是非常昂贵的资源,创建进程消耗很大。另外创建的进程过多会导致进程切换开销大幅上升Swoole\Process特性:基于Unix Socket和sysvmsg消息队列的进程间通信,只需调用write/read或者push/pop即可支持重定向标准输入和输出,在子进...

2019-02-23 10:57:58 239

原创 Swoole IO异步Redis 持续更新

Swoole IO异步Redis 持续更新安装redis编译安装hiredis启用异步Redis客户端 重新编译swoole查看是否成功可能遇到的问题简单实现安装redis目前只提供ubuntu的安装方式,其他安装方式请自行查找sudo apt-get install redis-server编译安装hiredishiredis下载地址下载后 解压并且目录内make -jsu...

2019-02-22 17:32:59 358

原创 Swoole IO异步Msql 简单增删改查

Swoole IO异步Msql 持续更新简单IO异步Msql 实现简单IO异步Msql 实现mysql.php<?php/** * Created by PhpStorm. * User: dom * Date: 19-2-22 * Time: 下午4:09 */class AysMysql{ public $dbSource = ""; public...

2019-02-22 16:45:04 208

原创 Swoole IO异步读取文件与写入文件

Swoole IO异步读取文件与写入文件 持续更新简单IO异步读取文件 实现简单IO异步写入文件 实现简单IO异步读取文件 实现read.php<?php/** * Created by PhpStorm. * User: dom * Date: 19-2-21 * Time: 下午2:55 *//** * 读取文件 最高4M大小的文件 */swoole_asyn...

2019-02-22 16:42:07 695

原创 Swoole WebSocket服务端与客户端 持续更新

Swoole WebServer服务端与客户端 持续更新简单WebServer 服务端实现简单WebServer 客户端实现访问优化成面向对象简单WebServer 服务端实现server.php<?php$server = new Swoole\WebSocket\Server("0.0.0.0", 9906);//$

2019-02-21 13:58:34 1025 1

原创 Swoole HttpServer服务端 持续更新

Swoole HttpServer服务端 持续更新简单HttpServer 服务端实现访问简单HttpServer 服务端实现server.php<?php$http = new swoole_http_server("0.0.0.0", 9906);$http->on('request', function ($request, $response) { // 设置...

2019-02-21 10:52:22 186

原创 Swoole TCP服务端与客户端 持续更新

Swoole TCP服务端与客户端的 初步研究 持续更新简单TCP 服务端实现set相关配置参数简单TCP 客户端实现简单TCP 服务端实现server.php<?php$serv = new swoole_server('0.0.0.0', 9906);$serv->set([ 'worker_num' => 4, // 最大连接 'max_requ...

2019-02-20 17:46:17 1503

原创 apiDoc 详解 api接口文档生成

PHP使用apiDoc api接口文档安装apidocapidoc 命令参数列表配置(apidoc.json)apidoc.json配置项apidoc注释参数@api@apiErrorExample@apiDefine@apiDeprecated@apiDescription@apiError@apiExample@apiGroup@apiParam@apiHeader@apiHeaderExam...

2019-02-20 14:11:50 14966 5

原创 Ubuntu 源码安装编译swoole

Ubuntu 源码安装编译swoole下载swoole源码cd [可以下载swoole源码的目录]git clone https://gitee.com/swoole/swoole.git # git 工具自行安装编译安装cd [swoole源码路径内][php安装目录(详细目录)]/bin/phpize# 发现会多了几个文件 比如 configure 等./configure ...

2019-02-18 20:26:22 165

原创 Ubuntu PHP7的源码编译安装

Ubuntu PHP7的源码编译安装PHP7官网下载(推荐下载.tar.bz2文件)tar -xjvf [刚刚下载好的文件] cd [解压好的目录]#安装./configure --prefix=[安装目录] --with-config-file-path=[安装目录]/etc# 其他参数自行了解# 需要依赖,如未满足请根据提示安装依赖 gcc autoconfig 之类mak...

2019-02-18 20:07:40 277

原创 通用Nginx优化配置

# 配置nginx所用的系统用户use Nginx;# cpu虚拟内核数worder_processes 16;# 自动分配cpuworder_cpu_affinity auto; # 错误日志存放点 等级error_log /var/log/nginx/error.log warn;# pid所在位置pid /var/run/nginx.pid;# 文件句柄数量 小站点 1...

2019-02-17 10:53:41 419

转载 MySQL强制索引和禁止某个索引

MySQL强制索引和禁止某个索引mysql强制使用索引:force index(索引名或者主键PRI)mysql禁止某个索引:ignore index(索引名或者主键PRI)mysql强制使用索引:force index(索引名或者主键PRI)例如:select * from table force index(PRI) limit 2;(强制使用主键)select * from tabl...

2019-01-16 21:20:26 231

原创 Ubuntu18.04 安装Etcher——开源USB镜像写入工具

Ubuntu如何安装Etcher——开源USB镜像写入工具Ubuntu安装EtcherEtcher 是一款跨 Windows、macOS 和 Linux 系统的流行 USB 写入工具,日前它刚更新发布了其 Etcher 1.0 稳定版。新版本的发布在很大程度上改进了其性能和稳定性,据官方开发人员说,新版本有助于让其成为更加稳定和可靠的 U 盘写入工具。Ubuntu安装Etcher添加源...

2019-01-03 11:34:38 7505

原创 Ubuntu16.04系统中创建新用户

一. 新建用户1.切换到 root 最高权限用户su root2.添加一个新用户wwwadduser www 然后根据系统提示进行密码和注释性描述的配置**二. 允许该用户以管理员身份执行指令 即可以使用 sudo **1.切换到 root 最高权限用户su root2.执行visudovisudo3.修改该文件,在“root ALL=(ALL:ALL) ALL”...

2018-11-18 13:28:34 559

原创 修改php-fpm和nginx运行用户

nginx和php-fpm是www-data用户运行想要修改为 www 用户运行修改Nginxcd /etc/nginxsudo vim nginx.conf# 头部是这样user www-data;worker_processes auto;pid /run/nginx.pid;include /etc/nginx/modules-enabled/*.conf;# 修改为...

2018-11-18 13:13:58 3923

原创 ubuntu服务器中搭配码云git自动更新钩子

本次主要以配置码云git的自动pull钩子记录与分享:一台 Ubuntu18.10 的服务器由于本人最近心血来潮买了一台服务器,开一个新项目,所以作为此次记录与分享搭配环境 PHP7.2 mysql Nginx Git这里不讲解如何搭配环境,如有需要 看这里 https://blog.csdn.net/qq_14824885/article/details/80752013...

2018-11-18 13:07:59 511

原创 Ubuntu 18.04 安装Deluge 好用的BT种子下载工具

安装Delugesudo add-apt-repository ppa:deluge-team/ppasudo apt-get updatesudo apt-get install deluged deluge-web deluge-console运行delugeddeluge-web --fork–fork 参数表示让 deluge-web 后台运行。如果要 SSL 连接,可...

2018-11-06 13:52:44 8534 1

转载 PHP设计模式(三)——建造者模式(Builder Pattern)

PHP设计模式(三)——建造者模式(Builder Pattern建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。建造者模式属于对象创建型模式。根据中文翻译的不同,建造者模式又可以称为生成器模...

2018-09-27 10:39:09 62

转载 PHP设计模式(二)——工厂模式(Factor Pattern)

@[TOC](PHP设计模式(二)—工厂模式(Factor Pattern))工厂模式(Factor Pattern),就是负责生成其他对象的类或方法(一)为什么需要工厂模式工厂模式可以将对象的生产从直接new 一个对象,改成通过调用一个工厂方法生产。这样的封装,代码若需修改new的对象时,不需修改多处new语句,只需更改生产对象方法。若所需实例化的对象可选择来自不同的类,可省略if...

2018-09-25 16:24:51 77

转载 PHP设计模式(一)——单例模式(Singleton Pattern)

PHP设计模式(一)——单例模式(Singleton Pattern)单例模式(Singleton Pattern):顾名思义,就是只有一个实例。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。(一)为什么要使用PHP单例模式php的应用主要在于数据库应用, 一个应用中会存在大量的数据库操作, 在使用面向对象的方式开发时, 如果使用单例模式...

2018-09-25 10:34:36 91

原创 ubuntu 18.04 server 扩容(LVM)磁盘 解决磁盘不足的情况 (亲测)

因为发现我的本地server出现磁盘满了的情况 所以进行lvm的扩容 (截图的都是扩容后的 所以忽略容量)1 查看磁盘情况df -h 原本发现 /dev/mapper/ubuntu–vg-ubuntu–lv 这个磁盘满了 所以要进行扩容的就是这个了2.显示存在的卷组sudo vgdisplay 可以看出 Alloc PE / Size 12800...

2018-09-12 17:05:26 11646 4

原创 PHP phpspreadsheet 导出大数据 csv excel

PHP phpspreadsheet 导出大数据1、composer 安装 phpspreadsheet 这个 composer require phpoffice/phpspreadsheet2、composer 安装 phpspreadsheet 这个 普通的Excel根据内存来算 可能不超过4000条普通的导出xlsx (亲测封顶3000多条)set_time_li...

2018-09-10 19:02:56 7594 3

原创 LNMP swoole 的初步使用 亲测

LNMP swoole 的初步使用1、安装swoole扩展# 编译安装# https://github.com/swoole/swoole-src/releases clone一份下来cd swoolesudo phpize (ubuntu 没有安装phpize可执行命令:sudo apt-get install php-dev来安装phpize)sudo ./config...

2018-09-07 15:11:52 515

原创 Mysql5.7 主从复制 主从(Master/Slave)同步配置

环境:mysql版本都是5.7 主(Master) ubutnu18.04:192.168.199.254 从(Slave) ubutnu18.04:192.168.199.172两个mysql要数据相同才可以开启主从,所以这里新建一个新的库来处理主从 testzcMaster(192.168.199.254 )的配置sudo vim /etc/mysql/conf.d/mys...

2018-08-29 11:41:58 566

转载 ubuntu 18.04 - server版 开机启动脚本

ubuntu 18.04 - server版 开机启动脚本systemd 默认读取 /etc/systemd/system 下的文件,该目录下的文件会链接/lib/systemd/system/下的文件。 执行 ls /lib/systemd/system 你可以看到有很多启动脚本,其中就有我们需要的 rc.local.service打开脚本内容:[Unit]Description...

2018-08-11 16:11:12 8335 6

原创 Ubuntu18.04 安装 Postman

Ubuntu18.04 安装 Postman1、官网下载2、解压sudo tar -xzf Postman-linux-x64-****.tar.gz3、放到安装目录本人习惯将安装的文件放到 /opt/ 下 所以就将解压的文件夹 sudo mv ./Postman/ /opt/Postman4、创建软链接sudo ln -s /opt/Postman/Pos...

2018-08-11 15:57:36 1552

原创 ubuntu 18.04 设置静态IP

设置固定的静态IP 修改配置文件/etc/netplan/50-cloud-init.yamlsudo vim /etc/netplan/50-cloud-init.yaml# 以下为我本机的参考配置network: ethernets: enp4s0: #配置的网卡名称 addresses: -...

2018-08-11 14:11:16 2493

原创 Ubuntu 18.04 美化 之 安装 deepin 的桌面环境

安装 deepin 的桌面环境sudo add-apt-repository ppa:leaeasy/dde sudo apt-get update sudo apt-get install dde过程有点久,看网速 安装好之后重启 在输入用户密码的时候可以选择桌面 选择 Deepin 即可进入 然后就去探索设置吧...

2018-07-31 16:27:40 8305 1

原创 ubuntu18.04 好用的下载工具 (uGet 与 axel )

uGet 安装sudo add-apt-repository ppa:plushuang-tw/uget-stablesudo add-apt-repository ppa:t-tujikawa/ppa# 这里是uGet的客户端sudo apt-get install uget # 这里是待会要用的下载方式sudo apt-get install aria2 安装谷歌浏...

2018-07-30 16:45:22 41275 3

原创 Ubuntu18.04 安装WPS(亲测)

卸载libreofficesudo apt-get remove --purge libreoffice*官网下载WPS http://community.wps.cn/download/wget http://kdl.cc.ksosoft.com/wps-community/download/6634/wps-office_10.1.0.6634_amd64.deb...

2018-07-30 16:01:04 40890 11

ShopNC_Simple_v2.4_UTF8.zip

ShopNC_Simple_v2.4_UTF8.zip

2014-06-17

空空如也

空空如也

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

TA关注的人 TA的粉丝

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