V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Kylinsun
V2EX  ›  PHP

请问 laravel+dingo 构建 restful api 怎样做压力测试才最接近生产环境,有什么工具能测接口的性能,如何才能优化接口的性能?本人刚刚捣鼓后端不久,希望大家能给点帮助。

  •  
  •   Kylinsun · 2016-11-28 09:05:53 +08:00 · 4690 次点击
    这是一个创建于 2946 天前的主题,其中的信息可能已经有所发展或是发生改变。
    16 条回复    2016-12-02 17:17:57 +08:00
    neoblackcap
        1
    neoblackcap  
       2016-11-28 09:38:44 +08:00   ❤️ 1
    我们压力测试都是自己用 gevent 模拟一个客户端,不断请求
    kushao1267
        2
    kushao1267  
       2016-11-28 09:52:18 +08:00
    supervisor 有个 ab 用于压力测试
    minbaby
        3
    minbaby  
       2016-11-28 10:40:04 +08:00   ❤️ 1
    @kushao1267 不是 apache-utils 有个 ab 么
    f0101
        4
    f0101  
       2016-11-28 11:59:56 +08:00   ❤️ 1
    laravel 性能不太好吧,怎么优化 1000 多个并发就到极限了。
    sujin190
        5
    sujin190  
       2016-11-28 12:30:45 +08:00   ❤️ 1
    @f0101 实际使用中 1000 到不了吧, rps
    akira
        6
    akira  
       2016-11-28 12:40:06 +08:00
    @f0101 接口的性能瓶颈一般不在语言上面
    kankana
        7
    kankana  
       2016-11-28 12:40:11 +08:00   ❤️ 1
    用 wrk 吧, 可以使用 lua 模拟 post, 添加 headers 的...

    直接上 php7,生产环境把 opcache 的 validate_timestamps 关掉

    最后,还是会发现瓶颈是在数据库这边...
    Kylinsun
        8
    Kylinsun  
    OP
       2016-11-28 12:42:34 +08:00 via Android
    谢谢大家的帮助,我在折腾折腾。
    cesar
        9
    cesar  
       2016-11-28 12:45:29 +08:00   ❤️ 1
    @Kylinsun 一定要开 opcache ,我用 siege 测试的
    @kankana validate_timestamps 是干啥用的?(原谅这个 RTFM 问题...)
    yangyifan
        10
    yangyifan  
       2016-11-28 12:46:11 +08:00 via iPhone   ❤️ 1
    阿里云有一个这样的产品。可以看看是否满足你的需求
    Ouyangan
        11
    Ouyangan  
       2016-11-28 14:18:16 +08:00   ❤️ 1
    试试 jmeter
    66beta
        12
    66beta  
       2016-11-28 14:29:57 +08:00   ❤️ 1
    HP 有个软件叫 什么 runner
    yangyao
        13
    yangyao  
       2016-11-28 15:27:29 +08:00   ❤️ 1
    jmeter
    wenxiuzh
        14
    wenxiuzh  
       2016-11-28 15:31:00 +08:00   ❤️ 1
    @Kylinsun loadrunner 写个脚本跑一周看看效果
    goodryb
        15
    goodryb  
       2016-11-28 15:51:34 +08:00
    压力测试有 Jmeter , loadrunner ,这个两个用的比较多,但是需要自己部署。
    阿里云有个压测服务 PTS ,可以直接使用,非常方便。
    asen477
        16
    asen477  
       2016-12-02 17:17:57 +08:00
    简单粗暴的方法,就是利用 curl for 循环
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1000 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:42 · PVG 02:42 · LAX 10:42 · JFK 13:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.