美文网首页
模拟并发场景压测的PHP调优

模拟并发场景压测的PHP调优

作者: M_ZH | 来源:发表于2018-05-18 16:24 被阅读18次

机器配置

系统配置:16核24G centos6.5
压测工具:JMeter

通过调整PHP pool 配置调优

方案一: 单台机器有两个进程池,每个进程池300个子进程,共600个子进程
方案二: 单台机器启动6个进程池,每个进程池50 个子进程,共300个子进程

方案二每个进程池50子进程数以及6个进程池都是通过压测获取到的数值。

方案 并发 TPS 错误率 报错
方案一 5000 375 39% upstream time out,no live upstreams while connectiong to upstream
方案二 5000 431 1.37% recv() failed(104: connection reset by peer)

进程池配置

cat www.conf
[www]
user = www
group = www
listen = 127.0.0.1:9004
pm = static
pm.max_children = 50
pm.start_servers = 30
pm.min_spare_servers = 10
pm.max_spare_servers = 40
pm.max_requests = 400
pm.status_path = /status_9004
slowlog = var/log/$pool.log.slow
request_slowlog_timeout = 2
request_terminate_timeout = 2m

PHP相关原理

查了些资料都没有解释得通为何多进程池可以提高并发响应。
可能的情况是每个进程池都有资源隔离,子进程资源隔离,减少消耗。
若集中在某个池,可能会有资源抢夺或其他资源消耗问题?

压测数据

image.png

相关文章

  • 模拟并发场景压测的PHP调优

    机器配置 系统配置:16核24G centos6.5压测工具:JMeter 通过调整PHP pool 配置调优 方...

  • Jmeter压测java接口、Jmeter自定义变量模拟多用户压

    场景:作为开发人员经常需要进行java接口的压测,比如商品抢购、并发量大的活动接口,需要模拟多用户进行并发压测,这...

  • 性能压测与调优

    性能压测是当服务上线前,或者之后重要需求发布流程中,需要做的必要测试;以模拟真实流量的方式,获取当前系统的...

  • 数据库主键更新死锁问题

    记一次压测数据死锁问题:并发场景为秒杀减库存的场景,使用Jmeter并发调用秒杀接口,秒杀使用数据库乐观锁,主键更...

  • jvm参数解析(含调优过程)

    前阵对底层账单系统进行了压测调优,调优的最后一步--jvm启动参数中,减小了线程的堆栈空间:-XX:Thr...

  • jmeter(九) 简单压测

    压测策略:不同并发数:10,50,100,200,400 压测结果:并发数:最佳并发用户数、最大并发用户数流量:每...

  • siege工具源码解析

    原理 如果并发用户数为n,那么就会相应创建n个压测线程,每个线程模拟一个用户。除了压测线程之外,主函数会额外生成2...

  • 流量录制,基于常态化压测

    简介 常态化压测、业务压测、集群压测、全链路压测、等基于特定需求的对后台接口进行的并发式请求,接口自动化压测数据的...

  • JVM

    jvm内存结构/java运行时数据区 JVM调优 调优流程: 压测,可以增加代码或者使用工具,比如LoadRunn...

  • 性能压测学习大纲

    一、压测的目的 二、压测的完整流程 三、压测场景分析/组织测试脚本 四、压测数据准备 五、压测指标监控 七、压测结...

网友评论

      本文标题:模拟并发场景压测的PHP调优

      本文链接:https://www.haomeiwen.com/subject/kwqgdftx.html