php并发对MYSQL造成压力的解决方法


Posted in PHP onFebruary 21, 2013

PHP页面有一个浏览量统计每秒有200并发,造成insert给mysql造成很大压力

lnmp环境,其他页面内容都做了缓存了,没有多大的负载,就是这个浏览量统计功能,给mysql带来不小的压力,请问诸位有什么解决办法吗?

怎么都说不要用MySQL来做,每秒200并发对MySQL来说不算啥难事啊。而且换成Redis、Memcached,持久化姑且不说,业务代码和运维部署量都不小。

我给你几个建议,尽量让你的运维部署和业务代码改动小一些。

你可以做主从分离,不要在一个库上高并发插入同时还做大量统计运算。分离之后,查询在从库是做(甚至是导入Hive之类专门的分布式系统来做),主库上可以去掉索引,提升插入的性能。这个方法,业务代码几乎不用任何改动(改个数据库配置文件就好了)。MySQL运维部署也可以选个业务低谷在线做。

如果你可以接受少量业务代码(PHP)改动,还有两个建议:
1. 分库,分表,每个表的数据总量小了,操作起来性能会好一些,特别是对从库的MyISAM表。你插入之前可能会有一些查询,例如查询这个IP在不在库里,以前统计过没。
2. 使用HandlerSocket插件,绕过SQL Parser,直接操作存储文件。如果业务上有可能,还可以使用bulk insert(批量插入)。MySQL InnoDB还推出了类似HandlerSocket的InnoDB NoSQL Plugin,用的memcached协议,共享InnoDB Buffer,再也不用操心MySQL和Memcached之前怎么维护数据一致性了。

PHP 相关文章推荐
phpmyadmin的#1251问题
Nov 25 PHP
坏狼php学习 计数器实例代码
Jun 15 PHP
php array_intersect()函数使用代码
Jan 14 PHP
php中取得文件的后缀名?
Feb 20 PHP
CI(CodeIgniter)框架中的增删改查操作
Jun 10 PHP
smarty表格换行实例
Dec 15 PHP
yii2.0使用Plupload实现带缩放功能的多图上传
Dec 22 PHP
thinkPHP查询方式小结
Jan 09 PHP
YII中Ueditor富文本编辑器文件和图片上传的配置图文教程
Mar 15 PHP
PHP 7安装调试工具Xdebug扩展的方法教程
Jun 17 PHP
PHP CURL实现模拟登陆并上传文件操作示例
Jan 02 PHP
php 文件上传至OSS及删除远程阿里云OSS文件
Jul 04 PHP
php连接mssql数据库的几种方法
Feb 21 #PHP
PHP递归调用的小技巧讲解
Feb 19 #PHP
PHP递归返回值时出现的问题解决办法
Feb 19 #PHP
PHP递归算法的详细示例分析
Feb 19 #PHP
七款最流行的PHP本地服务器分享
Feb 19 #PHP
浅析PHP递归函数返回值使用方法
Feb 18 #PHP
phpadmin如何导入导出大数据文件及php.ini参数修改
Feb 18 #PHP
You might like
星际玩家的三大定律
2020/03/04 星际争霸
Smarty简单生成表单元素的方法示例
2016/05/23 PHP
php面向对象之反射功能与用法分析
2017/03/29 PHP
php处理抢购类功能的高并发请求
2018/02/08 PHP
刷新时清空文本框内容的js代码
2007/04/23 Javascript
JavaScript Event学习第九章 鼠标事件
2010/02/08 Javascript
Prototype源码浅析 Number部分
2012/01/16 Javascript
Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
2014/09/01 Javascript
jquery制作多功能轮播图插件
2015/04/02 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
Javascript实现图片加载从模糊到清晰显示的方法
2016/06/21 Javascript
Node.js发送HTTP客户端请求并显示响应结果的方法示例
2017/04/12 Javascript
vue一步步实现alert功能
2017/07/05 Javascript
ReactNative短信验证码倒计时控件的实现代码
2017/07/20 Javascript
微信小程序实现左右列表联动
2020/05/19 Javascript
layer扩展打开/关闭动画的方法
2019/09/23 Javascript
小程序跨页面交互的作用与方法详解
2020/01/07 Javascript
OpenLayers3实现地图鹰眼以及地图比例尺的添加
2020/09/25 Javascript
[01:15:18]2014 DOTA2国际邀请赛中国区预选赛 LGD VS Speed Gaming.cn
2014/05/22 DOTA
[02:00]DOTA2英雄COSPLAY闹市街头巡游助威2015国际邀请赛
2015/08/02 DOTA
python中Pycharm 输出中文或打印中文乱码现象的解决办法
2017/06/16 Python
Pycharm运行加载文本出现错误的解决方法
2019/06/27 Python
Python程序控制语句用法实例分析
2020/01/14 Python
浅谈tensorflow 中tf.concat()的使用
2020/02/07 Python
基于python3生成标签云代码解析
2020/02/18 Python
详细分析Python可变对象和不可变对象
2020/07/09 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
CSS3 Media Queries详细介绍和使用实例
2014/05/08 HTML / CSS
css3中背景尺寸background-size详解
2014/09/02 HTML / CSS
allbeauty美国:英国在线美容店
2019/03/11 全球购物
卡骆驰英国官网:Crocs英国
2019/08/22 全球购物
支教自我鉴定
2014/01/18 职场文书
班风口号
2014/06/18 职场文书
2016年小学生迎国庆广播稿
2015/12/18 职场文书
学校趣味运动会开幕词
2016/03/04 职场文书
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby