
PHP
文章平均质量分 74
SiegeLionQi
学习内容痕迹。。
展开
-
获取请求IP地址
function getIp(){ $ip = $_SERVER['REMOTE_ADDR']; if(isset($_SERVER['HTTP_CDN_SRC_IP'])) { $ip = $_SERVER['HTTP_CDN_SRC_IP']; } elseif (isset($_SERVER['HTTP_CLIENT_IP']) && preg_ma转载 2017-11-22 18:35:59 · 286 阅读 · 0 评论 -
PHP 协程
协程,又称微线程,纤程。英文名Coroutine。PHP 官方文档的解释:生成器提供了一种更容易的方法来实现简单的对象迭代,相比较定义类实现 Iterator 接口的方式,性能开销和复杂性大大降低。生成器允许你在 foreach 代码块中写代码来迭代一组数据而不需要在内存中创建一个数组, 那会使你的内存达到上限,或者会占据可观的处理时间。相反,你可以写一个生成器函数,就像一个普通的自定原创 2017-12-13 16:36:15 · 456 阅读 · 0 评论 -
WEB 访问PHP服务器 进程堆积
近日,服务器出现异常,网站不能正常访问。经排查是php的问题。在重启php-fpm时,恢复正常。1分钟之后又出现故障。查看php日志文件 /usr/local/php/var/log 后提示WARNING: [pool www] server reached pm.max_children setting (5), consider raising it子进程数已经达到转载 2017-12-14 16:03:28 · 651 阅读 · 0 评论 -
悲观锁&乐观锁
悲观锁(Pessimistic Lock)悲观锁的特点是先获取锁,再进行业务操作,即“悲观”的认为获取锁是非常有可能失败的,因此要先确保获取锁成功再进行业务操作。通常所说的“一锁二查三更新”即指的是使用悲观锁。通常来讲在数据库上的悲观锁需要数据库本身提供支持,即通过常用的select … for update操作来实现悲观锁。当数据库执行select for update时会获取被se原创 2018-01-11 11:57:20 · 340 阅读 · 0 评论 -
rabbitmq消息队列
安装:RabbitMQ+PHP 消息队列环境配置参考文档:http://www.cnblogs.com/phpinfo/p/4104551...http://blog.youkuaiyun.com/historyasamirror/ar...依赖包安装yum install ncurses-devel unixODBC unixODBC-devel转载 2018-01-11 16:54:21 · 515 阅读 · 0 评论 -
mysql监控 php&&shell 发送电子邮件
项目需要对MySQL的状态及性能进行监控。监控的指标包含是否存活、慢查询数、连接数、内存占用等指标。shell脚本代码如下所示:(没有涉及发送邮件代码,可根据具体需求添加邮件发送代码)watch.sh#!/bin/bashhost=127.0.0.1port=3306user=rootpassword=792a1d086a2bpath=/usr/bin/curFile=./原创 2018-01-03 18:32:04 · 1964 阅读 · 0 评论 -
Laravel API 限速异常 HTTPException Too Many Attemps
Laravel API 限速异常 HTTPException Too Many Attemps更新日期: 2017-10-28 阅读次数: 543 分类: Laravel最近线上 Laravel 错误日志发现了一个异常HTTPException Too Many Attemps而我一个同事在本地开发的过程中也频繁遇到这个异常。测试环境:Laravel 5转载 2018-01-26 11:04:26 · 2505 阅读 · 0 评论 -
websocket 聊天机器人
websocket.class.php:<?phpheader("Content-type: text/html; charset=utf-8");/* 创建类websocket($config); $config结构: $config=array( 'address'=>'192.168.0.200',//绑定地址 'port'=>'8000',//绑定端口 'eve转载 2018-01-19 17:46:42 · 1376 阅读 · 0 评论