优雅的输出错误-assert
原创 服务架构

优雅的输出错误-assert

在正常情况,我们会通过,if,else进行判断一个接口的条件是否满足,不满足则输出错误,例如在IM系统中,申请入群接口,需要以下判断:$param = $this->request()->getRequestParam();$groupModel = new UserGroupModel();//获取群信息$groupInf
阅读全文
震惊!if else 竟然同时输出!
原创 php

震惊!if else 竟然同时输出!

首先,大家看看这个代码,应该输出什么:<?phpif(pcntl_fork()){    echo 1;}else{    echo 2;}输出1?还是输出2? 但它其实输出的是1和2:为什么呢?在这边,最主要一点在于pcntl_fork函数:pcntl_fork
阅读全文
easyswoole实现线上更新代码
原创 服务架构

easyswoole实现线上更新代码

众所周知,easyswoole作为常驻内存的框架,修改代码并不能直接生效,而是需要重启服务,那么,当你的easyswoole项目上线之后,该如何保证旧请求的同时去更新代码呢?nginx reload和restart首先,我们需要了解到nginx reload和restart的区别.reloadnginx 执行reload命令后,将会重新加载一次配置文件,并且给其他worker进程发送信号,进程收到
阅读全文
原创 php

百度编辑器-easyswoole组件版

百度编辑器是一款非常优秀的开源在线的html编辑器.但由于历史悠久,提供的sdk源码不能使用composer安装,也不支持cli模式.更不支持swoole协程环境了.  所以本人根据百度编辑器的代码,写出了一个可以在cli,easyswoole环境下使用的composer包.  地址:  https://github.com/easy-s
阅读全文
mysql binlog恢复数据实战
原创 mysql

mysql binlog恢复数据实战

在前面,我们了解了mysql binlog日志的作用以及使用方法:  http://www.php20.cn/article/237 在后面讲到了,可以通过binlog进行恢复数据,那么,具体步骤是怎么样的呢?数据库备份数据库恢复的先决条件是,定时备份数据库,缩小binlog恢复范围.首先我们备份测试数据库数据:mysqldump -uroot -p --d
阅读全文
原创 mysql

关于mysql binlog二进制

binlog在mysql中,当发生数据变更时,都会将变更数据的语句,通过二进制形式,存储到binlog日志文件中.通过binlog文件,你可以查看mysql一段时间内,对数据库的所有改动.也可以通过binlog文件,进行数据恢复,以及集群同步.  binlog常用配置参数[binlog]log_bin = mysql-bin # {on&nbs
阅读全文
关于mysql集群主从服务器搭建
原创 mysql

关于mysql集群主从服务器搭建

在高并发流量下,数据库往往是服务端的瓶颈,由于数据库数据需要确保落地,同时保证数据同步,数据即时性,有效性的问题,导致数据库不能像平常后端程序一样负载均衡.  那么在大并发下,该如何缓解数据库的压力呢?mysql读写分离我们可以分析,程序对于mysql的操作无非就2种,写入数据/更新数据(数据变更),读取数据.数据变更,因为要保证数据可靠以及数据同步问题,无法直接通过开多台服务器解决.但
阅读全文
php混淆加密解密实战
原创 php

php混淆加密解密实战

在查看别人的php源码的时候,我们经常会看到加密后的php代码.那么php加密原理是什么呢?怎么解密呢?混淆加密我们从百度随便搜索一个加密网站,例如:http://dezend.qiling.org/encrypt/加密代码:<?php/** * Created by PhpStorm. * User: tio
阅读全文
关于easyswoole实现websocket聊天室的步骤解析
原创 php

关于easyswoole实现websocket聊天室的步骤解析

在去年,我们公司内部实现了一个聊天室系统,实现了一个即时在线聊天室功能,可以进行群组,私聊,发图片,文字,语音等功能,那么,这个聊天室是怎么实现的呢?后端又是怎么实现的呢?后端框架在后端框架上,我选用了php的easyswoole,easyswoole作为swoole中最简单易学的框架,上手简单,文档齐全,社区活跃直接通过easyswoole官方文档的例子,即可实现一个websocket服务器,并
阅读全文
本文目录
    Loading...