php进程太多,服务器卡死,怎么解决?

大吉大利都吃鸡 2014-11-01 01:21:15
我的服务器就一个php程序,完成数据库查询,但是查询量很大,每天大约100万次查询。
php-cgi 特别多,多的时候能达到500,而且不减少,基本看不到进程退出,服务器被弄得非常卡!
有什么办法能解决这种问题吗?
出现这种问题什么原因?
php框架可以解决这种问题吗?
我的服务器16g内存!能存够用,但是网站因为进程多,非常卡!
...全文
985 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
π哥 2014-11-04
  • 打赏
  • 举报
回复
500W查询,要看集中时间运用率,建议优化缓存框架机制,将MEMCACHE及其他CACHE结合起来运用。 你不用优化的缓存,查询是非常危险的,如果数据库出现不稳定,数据丢失也不是不可能,我们是3000W的用量,以前搞的基本页面缓存,但动态部分无法回避,用CACHE都有点儿困难,后来用分发服务器,加上反向代理,解决了!
果酱很好吃 2014-11-03
  • 打赏
  • 举报
回复
若你的php使用php-fpm管理的,可以在php-fpm.conf里加入pm.max_requests = 500 试试,500自己定,表示每个进程使用多少次后自动关闭(同时新开一个进程)
傲雪星枫 2014-11-03
  • 打赏
  • 举报
回复
建議加入數據緩存,減輕服務器壓力。
黄袍披身 2014-11-02
  • 打赏
  • 举报
回复
查询很多的话一则是 将数据缓存,另外一个是优化查询,最后一个是优化数据库 这个可能麻烦多了.
码无边 2014-11-02
  • 打赏
  • 举报
回复
如果查询量很大,可以先从缓存服务器读取,没有数据,再从数据库读取。
xuzuning 2014-11-01
  • 打赏
  • 举报
回复
适当减少 fastcgi 应用池的规模,一般2、3百就够了 fastcgi 进程因为是可复用的,所以创建后就不会关闭 可考虑使用基于内存的缓存机制

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧