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

寻: PHP 性能优化小伙伴(Docker + Laravel + PostgreSQL) 解决程序性能问题

  •  
  •   garbch · 2021-03-10 17:10:51 +08:00 · 369 次点击
    这是一个创建于 1360 天前的主题,其中的信息可能已经有所发展或是发生改变。

    之前在 V2 找了一个小伙伴写了一个基于 Laravel 的 PHP 程序。

    程序的逻辑功能相对简单,主要为

    -提供 Web API 接口,接受 HTTP Post 的信息并且入库
    
    -并且提供简单的报表。
    

    部署之后发现一个奇怪的性能问题。当数据并发到达一定程度后,系统的 load 会从零点几直接飙升到几百。然后整台 VPS 都挂了。

    系统开发框架为: Laravel (PHP 7.4)

    数据库: PostgreSQL

    Docker 部署:

    - Web app Docker 
    - PostgresDB Docker 
    - Web Server Docker (Nginx + FPM)
    

    Docker 的 Linux Distro 为 Alpine

    现在寻找精通 PHP 性能的小伙伴来帮忙定位并且解决问题,有意者请加麻花腾详聊 UVE6MjI2NzQwMjkwNA==

    9 条回复    2021-03-11 16:32:20 +08:00
    Nick66
        1
    Nick66  
       2021-03-10 17:29:46 +08:00
    我猜会有很多人吐槽 PHP Laravel 不行
    JaguarJack
        2
    JaguarJack  
       2021-03-10 21:45:34 +08:00 via iPhone
    @Nick66 如果配置了 opcache 和 preload 还不行,就跟 laravel 没多大关系了
    jatai
        3
    jatai  
       2021-03-11 00:29:10 +08:00 via Android
    小心聊了两个小时出价 500
    mclxly
        4
    mclxly  
       2021-03-11 09:39:12 +08:00
    多大并发会遇到问题?
    guijianshi01
        5
    guijianshi01  
       2021-03-11 11:41:41 +08:00
    额,找原来的小哥技术支持呀。可以看到源码吗?
    MrWhite
        6
    MrWhite  
       2021-03-11 11:50:34 +08:00
    @jatai 估计做的时候给的也少。。 所以。。
    garbch
        7
    garbch  
    OP
       2021-03-11 16:30:46 +08:00
    @Nick66 @JaguarJack 应该和 Laravel 没关系 ..

    不过 PHP 环境直接 Docker 上的,看配置文件的确没 opcache 之类的
    garbch
        8
    garbch  
    OP
       2021-03-11 16:31:30 +08:00
    @MrWhite 妄自猜测毫无意义
    garbch
        9
    garbch  
    OP
       2021-03-11 16:32:20 +08:00
    @guijianshi01 可以。程序 + Docker 部署全套,不然怎么调优,是吧 :p
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2538 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:14 · PVG 09:14 · LAX 17:14 · JFK 20:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.