PHP
小秀的博客
这个作者很懒,什么都没留下…
展开
-
Symfony\Component\Debug\Exception\FatalErrorException: Allowed memory size of 2147483648 bytes
最近生产环境上出现了内存溢出的问题,由于项目中操作表格的地方超级多,所以一时半会没有办法定位到是哪出的代码引起的内存溢出。观察服务器内存使用情况,某核某一进程,将cpu使用率达到100%, 内存使用将近2G左右。使用ps_aux | grep 4752 查看进程, 进程中执行的是这个任务。然后找这个时间点之前的调度任务,发现在这个时间点附近有一条耗时队列执行失败。根据日志查询到这个时间,商品运营操作人员,导入excel 表格中。phpExcel 类在读取表格文件的时候,出现了内存溢出的情况。原创 2023-02-02 15:10:58 · 843 阅读 · 0 评论 -
tempnam(): file created in the system‘s temporary directory
tempnam(): file created in the system's temporary directory原创 2022-10-21 15:25:47 · 1237 阅读 · 0 评论 -
2021-05-12
PHP Fatal error: Uncaught Error: Call to a member function setName() on null in app\Core\Tools\RabbitMQ.php:450原因是因为连接MQ失败,项目中配置的vhost,需要在在后台进行如下配置。原创 2021-05-12 15:53:35 · 170 阅读 · 0 评论 -
php将文件上传到公司共享服务器
项目中需要将apk 文件上传到公司共享服务器上。之前的做法是通过阿里云进行一道中转。在包体较大的时候,在外网访问下,消耗时间会出现double.之前的做法流程架构如下图新改进的打包测试流程进行了优化,一般apk文件大小都在1G 左右。前端直接将文件传到后端服务器,然后后端服务器将apk文件传到共享盘,再将参数传给jenkins,然后用户选择打包的时候,直接从内网环境去取包资源。这样整个...原创 2018-11-13 16:36:36 · 1616 阅读 · 0 评论 -
工作中小技巧整体
1.解决忽略文件不生效的问题git rm -r --cached .git add .git commit -m 'update .gitignore'原创 2018-11-14 11:04:20 · 203 阅读 · 0 评论 -
nginx php上传大文件的设置(php-fpm)
nginx php上传大文件的设置(php-fpm) nginx的修改 send_timeout 60; fastcgi_connect_timeout 300; fastcgi_send_timeout 300; fastcgi_read_timeout 300; client_max_bod...转载 2018-11-12 17:17:52 · 634 阅读 · 0 评论 -
常用PHP函数学习
2019-2-141.abs(): 求绝对值2.ceil():向上取整 3.floor() : 向下取整4.fmod():浮点数取余 5.pow() : 返回数的N 次方 6.round() :浮点数四舍五入 7.sqrt() : 求平方根8.max() : 求最大值9.min() : 求最小值10.mt_rand() :...原创 2019-02-14 16:19:26 · 318 阅读 · 0 评论 -
memcache 服务器安装
linux php安装memcached扩展在linux 编译,需要gcc,make,cmake,autoconf,libtool 等工具,需提前安装好。memcached的安装包括:1、服务端的安装;2、客户端的安装一、服务器端安装方法一:memcached 依赖于libevent 库,因此我们需要先安装libevent.假设将源码放在/usr/local/src...原创 2019-03-07 11:57:10 · 361 阅读 · 0 评论 -
PHP与nginx之间的运行机制及其原理
一、普及Nginx与Php-fpm相关知识点(转载)Nginx是什么Nginx ("engine x") 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Php-fpm是什么1、cgi、fast-cgi协议cgi的历史早期的webserver只处理html等静态文件,但是随着技术的发展,出现了像php等动态语言。webse...转载 2019-03-19 15:30:32 · 258 阅读 · 0 评论 -
Linux下Apache、PHP、MySQL默认安装路径
Apache:如果采用RPM包安装,安装路径应在/etc/httpd目录下Apache配置文件:/etc/httpd/conf/httpd.confApache模块路径:/usr/sbin/apachectlWeb目录:/var/www/html如果采用源代码安装,一般默认安装在/usr/local/apache2目录下PHP:如果采用RPM包安装,...原创 2019-03-19 15:33:44 · 835 阅读 · 0 评论 -
Centos7安装PHP、MySQL、apache、Nginx
Centos7安装PHP、MySQL、apache (转载)这里今天教大家如何在centos7安装PHP,apache,mysql。首先我们需要先安装centos7,我们可以在我们的电脑上安装一个虚拟机,在里面装centos7,在win10里安装centos7可以看我的上一篇博客:https://www.cnblogs.com/shengChristine/p/9284969.html...转载 2019-03-19 14:21:52 · 1241 阅读 · 0 评论 -
PHP Fatal error: Uncaught AMQPException: Library error: a socket error occurred in
rabbit-mq长连接心跳时间要设一致原创 2019-05-29 17:58:56 · 4455 阅读 · 0 评论 -
mysql 语句优化
在项目中发现一个页面加载速度超级慢,时长超过5s 时间,简直不能忍受,检查代码,寻找到一处sql 语句,然后分析其执行计划。这段SQL想要得到的结果是appid 为100032下面,打包状态小于3,或者测试状态小于3 且测试状态不等于初始态的结果集。通过mysql explain 分析其执行计划。发现虽然在appid 这个字段上建立了索引。但是索引并未生效。近乎全表式的扫描。当...原创 2018-11-07 10:37:31 · 4258 阅读 · 0 评论 -
414 Request-URI Too Large
在项目中遇到使用get 请求,发现前端传递的参数超过nginx 服务器的限制。解决办法 (一):在nginx.conf里面把这两个缓存加大就行client_header_buffer_size 512k;large_client_header_buffers 4 512k;vi /usr/local/nginx/conf/nginx.conf 文件在配置中加入两行代码 ...原创 2018-11-01 12:08:36 · 57565 阅读 · 3 评论 -
PHP Fatal error: Uncaught Error: Class 'Redis' not found in
在项目中突然遇到redis 队列消费不了的情况,但是能正常往队列里面写入东西。然后登陆到服务器上查看supervisor 运行情况:ps -aux |grep supervisor然后执行 php queue.php 执行消费队列文件的时候出现了报错检查了代码,发现开发环境和测试环境的代码一样。手动在本地执行php queue.php 文件的时候正常无报错。phpinfo(...原创 2018-10-25 15:13:49 · 13992 阅读 · 0 评论 -
常用的工具类
<?php/** * 静态 function */class framework_static_function{ private static $numLength = 14; private static $sid = NULL; /** * 浏览器友好的变量输出 * @param mixed $var 变量 * @para...原创 2018-05-07 20:49:48 · 153 阅读 · 0 评论 -
接口文档
1 接入方式说明1.1 调用入口测试环境:http://18test-app.stg3.1768.com/ItemSubaccount1.2 消息结构1.3 接口请求结构如下:{ "head":{ //报文头 "apiVersion": "", //报文版本号 "reqAppId":...原创 2018-05-08 16:50:24 · 46206 阅读 · 1 评论 -
前后端分离技术总结
前端框架:vue.js后端框架:phalApi因为代码实现前后端分离,所以前端访问后端开发环境接口地址可以通过前端绑定本地host.将域名指向后端的ip地址。查看本机ip,在命令行输入:ipconfig查看他人服务器地址:ping 192.168.12.13...原创 2018-05-23 16:32:09 · 1009 阅读 · 0 评论 -
laravel框架学习遇到的一些问题
一:下载安装laravel5.6自定义路由时无法访问。直接访问出现报错:The requested URL http://www.tst.com/mt was not found on this server.最后将在找到原因,问题出现在apache配置上。要将项目的根目录定义在public目录上。之前一直定义在项目目录laravel56上。<VirtualHost *:80> ...原创 2018-05-28 15:14:11 · 463 阅读 · 0 评论 -
PHPstorm破解方法
PHPstorm破解方法相信用PHPstorm的程序员肯定很多,令人头疼的是下载的PHPstorm是有使用期限的,小编给同学们带来了一篇破解phpstorm的方法,迫不及待了来看看吧!PHPstorm安装和破解1.什么是phpstorm?PhpStorm是一个轻量级且便捷的PHP IDE,其旨在提高用户效率,可深刻理解用户的编码,提供智能代码补全,快速导航以及即时错误检查。但是phpstorm是商...转载 2018-06-19 10:49:00 · 2207 阅读 · 0 评论 -
工作中加密算法实践
游戏中需要对接银联渠道对方需求是需要使用非对称加密算法签名机制:对于报文的签名处理机制如下:首先,对报文中出现签名域(sign)之外的所有数据元采用key=value的形式按照名称排序,然后以&作为连接符拼接成待签名串。其次,对待签名串使用SHA-1算法做摘要,再使用接入方的签名私钥证书中的私钥对摘要做签名操作(签名时算法选择SHA-1)。最后,对签名做Base64编码,将编码后的签名串放...原创 2018-07-09 15:46:44 · 214 阅读 · 0 评论 -
Supervisor的作用与配置
supervisorsupervisor管理进程,是通过fork/exec的方式将这些被管理的进程当作supervisor的子进程来启动,所以我们只需要将要管理进程的可执行文件的路径添加到supervisor的配置文件中就好了。此时被管理进程被视为supervisor的子进程,若该子进程异常中断,则父进程可以准确的获取子进程异常中断的信息,通过在配置文件中设置autostart=ture,可以实现...转载 2018-07-10 09:41:45 · 206 阅读 · 0 评论 -
PHP redis安装及测试——Windows
Redis安装Windows下的Redis安装:下载地址:https://github.com/MSOpenTech/redis/releases根据自己情况下载32位或是64位,下载完解压到磁盘根目录(我安装在G盘)。文件夹重命名为:redis。redis下各个文件介绍: redis-server.exe 服务程序redis.conf redis配置...转载 2018-08-07 16:20:34 · 888 阅读 · 0 评论 -
php中htaccess分布式配置导致no input file specified报错
今天在phpstudy2018版本、ci框架版本配置本地项目的时候,遇到了这个htaccess分布式配置的文件问题!进入根目录报错:页面提示no input file specified.找不到路径资源。 1、如图找到httpd-conf文件,httpd.conf配置文件中加载了mod_rewrite.so模块2、AllowOverride None 将N...转载 2018-08-14 14:31:22 · 543 阅读 · 1 评论 -
supervisor 常驻内存进程
因项目中需要使用跑批执行队列任务。第一种方法:定时跑批任务第二种方法:使用supervisor常驻内存2.1安装supervisor$ sudo apt-get install supervisor2.2.生成配置文件放在/etc/supervisor/conf.d/文件夹下面取名yesdk_queue.confdirectory=/Project/YeSDK/Ye...原创 2018-08-07 16:19:33 · 1500 阅读 · 0 评论 -
apache LimitInternalRecursion 问题
从日志中可以看到,Apache在转发时,有性能瓶颈:[Fri Jul 13 13:45:34.182455 2018] [core:error] [pid 5801] [client 180.169.139.198:26427] AH00124: Request exceeded the limit of 10 internal redirects due to probable config...原创 2018-08-07 16:20:57 · 2086 阅读 · 0 评论 -
outlook邮箱无法收到邮件的坑
因开发中遇到需要发送邮件到outlook企业邮箱。一:项目框架使用的是php + phalapi二: 安装和配置从 PhalApi-Library 扩展库中下载获取 PHPMailer 包,如使用:$ git clone https://git.oschina.net/dogstar/PhalApi-Library.git然后把 PHPMailer 目录复制到 ./PhalA...原创 2018-08-30 11:32:06 · 18477 阅读 · 0 评论 -
不错的php方法
<?php/** * To change this template use File | Settings | File Templates. */class static_reg { const CHS = '/^[\u0391-\uFFE5]+$/';//必须为汉字 const MOBILE = '/^((\(\d{2,3}\))|(\d{3}\-))?(13|...原创 2018-05-07 20:55:44 · 154 阅读 · 0 评论