PHP多进程引发的msyql连接数问题
PHP多进程引发的msyql连接数问题
业务中有一块采用了PHP的pcntl_fork多进程,希望能提高效率,但是在执行的时候数据库报错
PDO::prepare(): Premature end of data (mysqlnd_wireprotocol.c:1244)
Packets out of order. Expected 1 received 108. Packet size=7102829
发现应该是短时间大量的链接写入数据库.导致数据库无法响应
show variables like '%max_connections%';
show variables like '%back_log%';
修改my.ini 配置 back_log
back_log = 104
MySQL能有的连接数量。当主要MySQL线程在一个很短时间内得到非常多的连接请求,这就起作用,
然后主线程花些时间(尽管很短)检查连接并且启动一个新线程。back_log值指出在MySQL暂时停止回答新请求之前的短时间内多少个请求可以被存在堆栈中。
如果期望在一个短时间内有很多连接,你需要增加它。也就是说,如果MySQL的连接数据达到max_connections时,新来的请求将会被存在堆栈中,
以等待某一连接释放资源,该堆栈的数量即back_log,如果等待连接的数量超过back_log,将不被授予连接资源。
另外,这值(back_log)限于您的操作系统对到来的TCP/IP连接的侦听队列的大小。
你的操作系统在这个队列大小上有它自己的限制(可以检查你的OS文档找出这个变量的最大值),试图设定back_log高于你的操作系统的限制将是无效的。
PHP多进程引发的msyql连接数问题的更多相关文章
- 监控msyql 连接数 及 各用户连接数
#!/bin/bash while true do date +%Y%m%d-%H:%M:%S mysql -uroot -p'xxx' -e "select count(1) from i ...
- 第二章IPC——IPC与开启多进程
问题 一.IPC ①.什么是IPC ②.为什么要有IPC 二.多进程 ①.如何开启多进程 ②.系统如何创建多进程 三.多进程引发的问题 问:私有进程(利用":+进程名")能否共 ...
- 笔记4:WEB服务器
web服务器 1 HTTP协议 http:超文本传输协议,基于tcp的方式,会更稳当更安全.协议就是规定了怎样去请求服务器,服务器如何返回信息.如下图红色方框标记所示: 打开浏览器电商广告原理: 我们 ...
- 云计算之路-阿里云上:RDS数据库连接数过万引发故障,主备库切换后恢复正常
非常抱歉!今天 12:03-12:52 ,由于数据库连接数异常突增超过1万,达到了阿里云RDS的最大连接数限制,影响了全站的正常访问.由此给您带来麻烦,请您谅解. 在发现数据库连接数突增的问题后,我们 ...
- [Python]django使用多进程连接msyql错误
问题 mysql 查询出现错误 error: (2014, "Commands out of sync; you can't run this command now") 查询 m ...
- msyql查看连接数
连接数 SHOW FULL PROCESSLIST 1. 查看允许的最大并发连接数 SHOW VARIABLES LIKE 'max_connections'; 2. 修改最大连接数 方法1:临时 ...
- msyql查看版本号、最大连接数、当前连接数等
1.查看版本号 select version(); 2.查看最大连接数 show variables like 'max_connections'; 3.查看当前连接数(如果是root帐号,你能看到所 ...
- 由linux下的多进程编程引发的关于进程间隔离的思考
源代码放到了三个文件中: #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include & ...
- MySQL服务器最大连接数怎么设置才合理[转]
如果mysql 连接数据设置不合理可能会导致很小的流量mysql就提示MySQL: ERROR 1040: Too many connections错误了,那么要如何才算是合理设置mysql最大连接数 ...
随机推荐
- 《R语言入门与实践》第五章:对象改值
本章将了如何对一个数据对象中的数据进行改动,分为以下方法: 直接改值 条件取值然后改值 直接改值 单个改值:vec[1] <- 1000多个改值: vec[c(1,3,5)] <- 100 ...
- java中的JSON数据转换方法fastjson
1 maven工程引入fastjson <?xml version="1.0" encoding="UTF-8"?> <project xml ...
- node中 path.resolve 和path.join的区别
path.resolve('a','b','c') 返回a/b/c path.resolve理论上总是以前一个路径作为基础路径,然后匹配当前路径,当前路径会有三种情况根目录(/),当前目录(./),上 ...
- 什么是卷积convolution
定义 卷积是两个变量在某范围内相乘后求和的结果.如果卷积的变量是序列x(n)和h(n),则卷积的结果 , 其中星号*表示卷积. 当时序n=0时,序列h(-i)是h(i)的时序i取反的结果:时序取反使得 ...
- C# WPF开发之MVVM模式开发
MVVM模式由Model,View,ViewModel三部分组成. Model需继承INotifyPropertyChange(属性修改通知) ViewModel负责业务逻辑,连接View和Model ...
- k8s搭建rook-ceph
一.介绍 Rook官网:https://rook.io Rook是云原生计算基金会(CNCF)的孵化级项目. Rook是Kubernetes的开源云本地存储协调器,为各种存储解决方案提供平台,框架和支 ...
- css中position 定位的兼容性,以及定位的使用及层级的应用
一.首先我们来看看定位的兼容性,当然是在IE6.7但是现在大多数公司都已经不考虑了 我们就作为一个了解吧: 1.在IE67下,子元素有相对定位的话,父级的overflow:hidden包不住子元素 解 ...
- 《Hello world 团队》第二次作业:团队项目选题报告
项目 内容 这个作业属于哪个课程 2016级计算机科学与工程学院软件工程(西北师范大学) 这个作业的要求在哪里 实验六 团队作业2:团队项目选题 团队名称 <hello--world团队> ...
- C++标准模板库(STL)之Priority_Queue
1.Priority_Queue的常用用法 priority_queue:优先队列,底层是使用堆来实现的.优先队列中,队首元素一定是当前队列中优先级最高的哪一个. a (优先级3),b(优先级4),c ...
- 从零开始搭建Webpack+react框架
1.下载node.js Node.js官网下载 , 安装: 安装成功后在控制台输入node -v 可查看当前版本: $ node -v v10.15.0 输入npm -v查看npm版本: $ npm ...