- 博客(33)
- 收藏
- 关注
转载 进程和线程的区别
在理解进程和线程概念之前首选要对并发有一定的感性认识,如果服务器同一时间内只能服务于一个客户端,其他客户端都再那里傻等的话,可见其性能的低下估计会被客户骂出翔来,因此并发编程应运而生,并发是网络编程中必须考虑的问题。实现并发的方式有多种:比如多进程、多线程、IO多路复用。多进程进程是资源(CPU、内存等)分配的基本单位,它是程序执行时的一个实例。程序运行时系统就会创建一个进程,并为它分配资...
2018-12-28 19:15:59 87
转载 Redis 数据备份与恢复
数据备份语法redis Save 命令基本语法如下:redis 127.0.0.1:6379> SAVE 实例redis 127.0.0.1:6379> SAVE OK该命令将在 redis 备份目录中创建dump.rdb文件。恢复数据1、获取备份目录redis 127.0.0.1:6379> CONFIG GET dir1) "di...
2018-12-28 19:09:54 230
转载 PHP优化的一些小技巧
PHP入门很容易,尤其是对于一个已经接触过程序编写的人来说,而对于没有接触过程序语言的菜鸟来说,学习用PHP做一个输出hello world的网页也很轻松。然而要编写高效率的代码,并不是所有懂程序的人都可以编写出来的,这需要经过多年的研究积累和经验总结。本文将给大家提炼一些PHP代码优化的实例,利用这些优化,PHP代码的运行能力将会大大提高,速度提升5倍以上有些情况下并不是不能出现。1...
2018-12-28 19:04:38 132
原创 FTP传输、下载文件
1.链接命令:ftp ip名 端口号2. 下载文件 下载文件通常用get和mget这两条命令。 a) get 格式:get [remote-file] [local-file] 将文件从远端主机中传送至本地主机中. 如要获取服务器上E:\rose\1.bmp,则 ftp> get /rose/1.bmp 1.bmp (回车) b) mg...
2018-12-28 18:48:46 389
原创 Linux下防火墙命令
在外部访问CentOS中部署应用时,需要关闭防火墙。关闭防火墙命令:systemctl stop firewalld.service开启防火墙:systemctl start firewalld.service关闭开机自启动:systemctl disable firewalld.service开启开机启动:systemctl enable firewalld.service查...
2018-12-27 18:59:56 480
转载 Linux安装Composer
Composer是php的一个包管理器,使用Composer能极大的提高我们的代码效率。当我们需要使用优雅的laraverl框架时我们一定不能绕过Composer当然Composer不是只为laravel服务的,他是为整个php服务的。(Composer需要php5.3.2以上才能运行) 下载Composer包 curl -sS https://getcomposer.org/inst...
2018-12-27 18:55:59 117
原创 使用Docker安装Redis
如果你还没有安装Docker请参考:https://blog.csdn.net/weixin_42579642/article/details/84952476下载redis docker pull registry.docker-cn.com/library/redis下载完成后查看镜像: docker images[root@VM_0_4_centos ~]# docker...
2018-12-27 18:44:54 431
原创 linux 安装php7.3
请先安装依赖包$ yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel...
2018-12-27 18:29:30 26579 3
转载 使用Swoole代替Web服务器运行Laravel框架
一个非常大的好处就是高性能,如果使用普通的web服务器,每次运行 PHP 脚本的时候,PHP都需要初始化模块并为你的运行环境启动Zend引擎。并且将 PHP 脚本编译为 OpCodes 交给 Zend引擎执行。这样就意味着每次HTTP请求的时候都执行一遍。因为单个请求创建的环境在请求执行结束后会立即销毁。而使用swoole就不一样了,可以将程序在启动的时候全部加载完毕而常驻内存。但是调试的时候每次...
2018-12-27 16:38:30 1289
转载 HTTPS站点使用WebSocket的常见错误及解决方案
因为HTTPS是基于SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密,所以在HTTPS站点调用某些非SSL验证的资源时浏览器可能会阻止。比如使用ws://***调用websocket服务器或者引入类似http://***.js的js文件等都会报错。这里简述一下连接websocket服务器时的错误及解决方案。当使用ws://连接websocket服务器时会出现类似如下错误:Mi...
2018-12-26 18:45:35 52088 6
转载 nginx-rtmp-module授权机制实现直播推流多房间授权认证
假设nginx直播服务器已经搭建完毕,如果还没有搭建完毕可以查阅利用nginx的nginx-rtmp-module搭建流媒体直播服务器这篇文章。在开发直播项目时推流应该是需要做权限认证的,不是任何人都可以随意向直播服务器推流,这就需要权限认证,实现起来也不复杂,只需要在nginx配置文件中的rtmp->server->application 下配置on_publish选项就可以,下面给...
2018-12-26 15:38:44 3809
转载 HTTPS站点使用WebSocket的常见错误及解决方案
因为HTTPS是基于SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密,所以在HTTPS站点调用某些非SSL验证的资源时浏览器可能会阻止。比如使用ws://***调用websocket服务器或者引入类似http://***.js的js文件等都会报错。这里简述一下连接websocket服务器时的错误及解决方案。当使用ws://连接websocket服务器时会出现类似如下错误:Mi...
2018-12-26 14:35:36 37044 2
转载 如何在已经安装好的Nginx上增加新模块
有时我们需要在现有的web服务器上增加新的模块实现更为丰富的功能,Nginx算是比较常用的web服务器,但是nginx也不仅仅只可以做web服务器,只要有对应的插件还可用作反向代理、即时通讯、文件下载、流媒体服务等功能,如果已经安装好了Nginx有不想重新安装覆盖的前提下如何新增模块呢?下面通过安装nginx-push-stream-module作为示例进行说明,安装其他模块也是同样的道理。首...
2018-12-25 10:11:45 969
转载 使用Hbuilder实现直播推流与直播观看
Hbuilder的HTML5+规范确实给众多开发者带来了很多便利,目前直播应用比较多,测试了一下H5 plus的直播推流与观看API确实可用,但是比原生应用要逊色一些了,测试一下是可以的,如果要做成型的产品可能要斟酌一下了,实际测试声音还原不够好,另外推流后客户端播放使用rtmp协议是可以正常播放,如果使用m3u8则播放卡顿,而同样的播放客户端和视频直播服务器,用其他工具推流则不会出问题,不知道是...
2018-12-25 10:10:13 4211 2
转载 利用nginx的nginx-rtmp-module搭建流媒体直播服务器
Nginx除了做web服务器之外在流媒体方面的支持也是有对应的模块,nginx-rtmp-module就是nginx的一个扩展模块,支持rtmp视频推流,同时利用nginx作为web服务器的有时可以很方便的实现直播拉流,项目官方地址是https://github.com/arut/nginx-rtmp-module。下面简述一下安装过程。首先需要下载或者克隆代码#下载wget https:...
2018-12-25 10:09:00 441
转载 laravel 自增 自减 操作
DB::table('users')->increment('votes'); // 自增 1 DB::table('users')->increment('votes', 5); // 自增 5 DB::table('users')->decrement('votes'); // 自减 1DB::table('users')->decrement('votes...
2018-12-23 16:10:37 1409
转载 Laravel中Redis的使用
安装laravel中使用redis首先需要你通过 Composer 安装 predis/predis 包:composer require predis/predis配置redis的配置文件是:config/database.php'redis' => [ 'client' => 'predis', 'default' =>...
2018-12-23 11:30:16 1062
原创 swoole简单入门
Linux下载安装:git clone https://github.com/swoole/swoole-src.git && \cd swoole-src && \phpize && \./configure && \make && make install或者pecl install swo...
2018-12-20 16:17:26 450
转载 Yaf框架的使用
在使用Yaf框架之前首先要看自己的php是否支持yaf扩展,如果没有安装yaf扩展的话,请参考如下地址进行安装:https://blog.csdn.net/weixin_42579642/article/details/85067172在安装完Yaf扩展后就可以创建我们的第一个yaf项目了。^_^下图是一个典型的目录结构,文件和文件夹都需要自己手动去创建的哦:applicati...
2018-12-18 15:55:58 1306
转载 Linux下PHP7安装yaf扩展
Yaf扩展是为php yaf框架准备的,要使用yaf框架的话就得先安装php的yaf扩展支持,安装yaf扩展前需要安装好php,安装方法为:lnmp.org官网 https://lnmp.org/install.htmllnmp 管理命令https://lnmp.org/faq/lnmp-status-manager.html安装lnmp集成环境的步骤1、下载安装yaf扩展库源码安装包...
2018-12-18 15:46:12 409
原创 使用X-Sendfile下载文件
X-Sendfile 是一种将文件下载请求由后端应用转交给前端 web 服务器处理的机制,它可以消除后端程序既要读文件又要处理发送的压力,从而显著提高服务器效率,特别是处理大文件下载的情形下!X-Sendfile 通过 HTTP header 来实现:在 X-Sendfile 头中指定一个文件的地址来通告前web server。不过,在默认情况下它是被大多数 web 服务器禁用的。而不同的...
2018-12-17 17:04:07 2012
原创 Docker共有仓库和本地私有仓库的构建
docker公共仓库的使用如果使用公有仓库首先使用命令docker login登录docker,如果没有账号需要先在官网注册,注册地址https://hub.docker.com/注册后再使用docker login登录 按照提示输入username和pawword即可docker login使用docker tag 对原始镜像打一个特殊标签 格式docker tag 原始镜...
2018-12-17 16:33:21 344
原创 使用Dockerfile定制docker镜像
Docker Store上已经有很多官方的镜像我们可以直接使用,但是有时候我们的环境和镜像会有些许差异,在pull之后还需要做一些变更,如果是团队开发那操作起来就略显繁琐,如果能实现镜像的定制那就很方便了。定制镜像有两种方式一种是从容器commit生成镜像,但是这种操作生成的镜像体积会比较大,很多无用的操作都会打包到镜像里面,下面介绍使用Dockerfile来定制镜像,以php镜像为例,假设我...
2018-12-13 16:41:56 139
原创 使用compose构建Docker多应用环境(Nginx+PHP+MySQL+Redis)
首先安装compose#下载并移动到/usr/local/bin目录下curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" \-o /usr/local/bin/docker-compose#赋予可执行权限chmod +x ...
2018-12-13 16:41:05 1820 1
原创 CentOS如何修改ip地址
打开network配置文件vi /etc/sysconfig/network-scripts/ifcfg-ens33其中ifcfg-ens33这个文件名有可能不同修改配置BOOTPROTO=none //这个选项改成noneIPADDR=172.20.10.11PREFIX=24GATEWAY=172.20.10.1DNS1=172.20.10.1重启即可...
2018-12-13 10:19:48 153
原创 使用Docker构建PHP开发环境
PHP开发环境中的一些服务之间是需要通信的,例如nginx和php-fpm,PHP和MySQL,PHP和redis等都需要通信,如果采用宿主机端口映射的方式可以满足网络通信但是效率和安全性都会减弱,所以可以使用Docker的网络指令来构建一个互通的网络,下面列出想用的网络命令。创建网络docker network create dev-net --driver bridge其中driv...
2018-12-12 18:03:10 301 4
原创 Vm(CentOS镜像)上模拟测试Docker,一些简单的安装步骤及使用
先了解几个概念:镜像 mysql 镜像容器 mysql服务仓库 mysql仓库linux最小化安装时没有netstat命令 可以使用yum -y install net-tools安装删除旧版本,如果没有可以不执行yum remove docker \ docker-client \ doc...
2018-12-11 11:40:00 285
原创 微信小程序通过经纬度计算两地距离php代码实现
最近小程序项目中,要求做个根据用户当前位置获取周围商家地址,并且按照由近到远排序的需求,所以做一下记录:根据两点间的经纬度计算距离 /** * @desc 根据两点间的经纬度计算距离 * @param float $lat 纬度值 * @param float $lng 经度值 * @param $status true KM,M显示;f...
2018-12-08 11:55:18 1075
转载 使用CURL实现GET和POST方式请求
/** 使用curl方式实现get或post请求 @param $url 请求的url地址 @param $data 发送的post数据 如果为空则为get方式请求 return 请求后获取到的数据*/function curlRequest($url,$data = ''){ $ch = curl_init(); $params[CURLOP...
2018-12-06 17:18:05 1228
原创 PHP数组和XML相互转换的函数,微信中常见的Sign生成函数
//数组转Xmlfunction ArrToXml($arr){ if(!is_array($arr) || count($arr) == 0) return ''; $xml = "<xml>"; foreach ($arr as $key=>$val) { if (is_numeric($val)){ $xml.="<".$key.">...
2018-12-06 17:17:10 1322
原创 微信小程序支付流程,异步回调及消息模板调用(php源码)
首先还是老样子把流程图给大家发一下商户系统和微信支付系统主要交互:1、小程序内调用登录接口,获取到用户的openid,api参见公共api【小程序登录API】2、商户server调用支付统一下单,api参见公共api【统一下单API】3、商户server调用再次签名,api参见公共api【再次签名】4、商户server接收支付通知,api参见公共api【支付结果通知API】...
2018-12-06 17:11:41 4712
原创 微信小程序登陆步骤
先把小程序登陆的流程图发一下: 之后开发者服务器可以根据用户标识来生成自定义登录态,用于后续业务逻辑中前后端交互时识别用户身份。 调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器。 调用 code2Session 接口,换取 用户唯一标识 OpenID 和 会话密钥 session_key。注意: 会话密钥 session_key 是...
2018-12-05 09:14:36 519 2
原创 Linux配置https服务
首先说明一点,并不是仅仅配置就可以使用真正的https服务,因为需要向证书颁发机构申请SSL证书首先生成私钥和csr文件切换到某个目录,在linux机器上执行以下命令生成私钥openssl genrsa -out server.key 2048然后在linux机器上执行以下命令生成csr文件openssl req -new -key server.key -out cert...
2018-12-04 18:24:39 19880
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人