设计模式之注册器模式

注册器模式1. 注册器模式是一种基础常见的设计模式,它的主要意思是把多个类的实例注册到一个注册器类中去,然后需要哪个类,由这个注册器类统一调取。 下面实现一个简单的注册器类```php<?php //注册器模式 class Register { //保存映射到注册器上的对象 protected static $object; //将对象映射到注册器上 public static function set($alias, $obj){ sel
阅读全文

利用Swoole实现简单IM聊天

利用Swoole实现一个简单的IM通讯聊天1. 为了大家方便理解,直接上代码,并在代码中写了详细注释 服务端代码如下```php<?php//创建websocket服务器并监听9501 端口$ws = new Swoole\WebSocket\Server('0.0.0.0',9501);//当用户连接后,执行的函数$wson('open',function ($ws,$request){ //控制台中输出 echo "新用户 {$
阅读全文

设计模式之单例模式

单例模式 什么是单例模式,单例模式的作用是什么? 1. 首先,单例模式也是我们设计模式中,最基本,经常使用的一种模式!在我们的业务代码当中,本来我们要通过Db来查询数据库,但是我们如果不是用的单例模式的时候,每次查询都要重复new Db对象并使用,这个地方就造成了系统资源的浪费。所以我们最常见的单例模式的使用,就是在数据库操作当中以及其他的I/O操作。1. 单例类只能有一个实例。1. 单例类必须自己创建自己的唯一实例。 1. 单例类必须给所有其他对象提
阅读全文

设计模式之简单工厂模式

简单工厂模式 什么是工厂模式,工厂模式的作用是什么?1. 首先,工厂模式是我们设计模式中,最基本,经常使用的一种模式!在我们的业务代码当中,本来我们要获取一个类的实例,需要用到new关键字。但是如果new 直接写到业务代码里,一个类在很多地方都实例化过,如果项目工程比较大,当这个类出了什么问题,比如:需要维护或者替换的时候,因为我们是在业务当中直接new的,所以需要每个文件都去修改,那么就会出现一系列的问题。 1. 工厂模式,顾名思义,就是不用new来获得实例,而是把业务类放进
阅读全文

phpstorm中如何设置自动上传

windows下开发swoole如何使用phpstorm设置文件自动上传1. 首先打开phpstorm,在菜单栏中找到工具(我这是汉化版的phpstorm,如果需要汉化的小伙伴请点击此链接 ) 1. 点击右上角红框内,添加要自动上传的服务器,填写名称(随便填写)与类型,点击确定1. 添加服务器的配置信息1. 设置自动上传的文件夹路径,点击文件夹按钮,选择服务器上的文件夹,点击确定即可1. phpstorm右边则出现服务器上所设置上传目录的信息
阅读全文

如何使用Git(三)

  • 北溟有鱼QAQ(LuffyQAQ)
  • 2019-08-13 21:01:38
  • Linux
  • linux
如何将主仓库更新到Fork子分支1. 首先使用 `git remote v` 查看远程信息 1. 使用 `git remote add zhu https://github.com/easyswoole/httpclient.git` 添加主仓库地址,也就是被同步给 fork 远程的上游仓库1. 再次使用 `git remote v` 查看远程信息,查看是否配置成功 1. 使用 `git fetch zhu` 从fork的远程的上游仓库,也就是主仓库同步代码
阅读全文

MySQL索引降维 优化查询 提高效率

写在前面 在前一篇文章中,我们已经介绍了索引、索引的优化规则等等 原文链接: 在其中我们有引申出`组合索引`,`多个单字段索引`冲突两个知识点。本文章主要是与后者有关联。在原文中,我们使用了下面的例子<pre现在有这样子的数据量:100W条数据 user_name=’我是用户名’100条数据 user_phone=’110′5条数据 user_name=’我是用户名’ and user_phone=’110′假设有这样子一条语句:
阅读全文

Linux下使用yum安装LNMP环境

如何使用yum搭建有需求的LNMP环境本人使用的是centos7系统,就以centos7的系统搭建为例 Nginx安装1. 下载/安装步骤: 2. 创建/编辑文件:`vi /etc/yum.repos.d/nginx.repo` 3. 编辑内容:`OS代表系统 OSRELEASE 代表系统版本号` ```shellname=nginx repo baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearc
阅读全文

swoole如何对ip限制访问频率

swoole如何对ip限制访问频率在我们开发api的过程中,有的时候我们还需要考虑单个用户(ip)访问频率控制,避免被恶意调用。归根到底也就只有两个步骤: 用户访问要统计次数 执行操作逻辑之前要判断次数频率是否过高,过高则不执行 easyswoole中实现Ip访问频率限制本文章举例的是在easyswoole框架中实现的代码,在swoole原生中实现方式是一样的。只要在对应的回调事件做判断拦截处理即可。 使用swoole\Table,储存用户访问情况(也
阅读全文

Mysql索引优化

写在前面在我们日常使用数据库的时候,肯定避免不了对数据库的优化。那么对数据库的优化又少了不`索引`的知识。是的,建立`索引`能极大地提高查询的效率。那么你知道吗,如果合理建立索引,可以更大地榨出数据库的性能——也就等同于进一步提高查询效率。写下这篇文章就是为了记录一下对索引的优化,合理建立索引。 什么是索引MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。我们可以简单理解为:快速查找排好序的一种数据结构。Mysql索引主要有两种结
阅读全文