uoddsa
V2EX  ›  PHP

各位大佬有用 laravel 寫 APP 接口的麽

  •  
  •   uoddsa · Mar 25, 2018 · 5890 views
    This topic created in 2971 days ago, the information mentioned may be changed or developed.
    我現在用的比較多的框架就是 laravel,各位大佬有用 laravel 寫 APP 接口的麽,性能怎麽樣,
    Supplement 1  ·  Mar 25, 2018
    我也想过用 lumen,可以想到后面可能有管理后台的功能,,,
    23 replies    2018-03-26 23:07:02 +08:00
    dilu
        1
    dilu  
       Mar 25, 2018
    如果只是单纯的写接口 推荐你使用 lemen
    laravel 家族出品 专门为 api 而生 文档也全 还有中文的
    dilu
        2
    dilu  
       Mar 25, 2018
    不好意思打错了是 lumen
    https://lumen.laravel-china.org/docs/5.3 这是中文文档
    mokeyjay
        3
    mokeyjay  
       Mar 25, 2018
    还是那句老话,绝大部分应用的都轮不到需要拼框架性能的时候
    单纯轮框架性能的话,Laravel 虽然不敢说倒数第一,但一定也是倒数前几了
    Vogan
        4
    Vogan  
       Mar 25, 2018
    我用的。。。
    目前业务量确实还没到达框架的瓶颈。
    MeteorCat
        5
    MeteorCat  
       Mar 25, 2018 via Android
    性能很不行,特别后期业务量大量引入大量第三方包带来的负担不适合做 API 接口,如果并发量极大的话推荐要么就 Phalcon 要么 Yaf,如果并发不大就随便哪个都可以
    carlclone
        6
    carlclone  
       Mar 25, 2018
    lumen+dingo+jwt-auth , 完美的搭配了
    uoddsa
        7
    uoddsa  
    OP
       Mar 25, 2018
    @dilu 我也想过用 lumen,可以想到后面可能有管理后台的功能,,,
    uoddsa
        8
    uoddsa  
    OP
       Mar 25, 2018
    @carlclone 我也想过用 lumen,可以想到后面可能有管理后台的功能,,,
    master
        9
    master  
       Mar 25, 2018
    你都写 API 了 管理后台也全做成接口 前端项目独立出来弄 根本用不着 Laravel 的 blade 吧
    而且管理后台又不涉及什么 SEO 前端做连 SSR 都不涉及
    l57t7q
        10
    l57t7q  
       Mar 25, 2018   ❤️ 1
    性能确实不好,但是等你发现不好的时候,DB 可能先跪
    akira
        11
    akira  
       Mar 25, 2018
    这种已经大量实施的框架,性能就算差也不会差到一个量级去。而且正常来说,大部分情况下,最早出现性能的点一般是数据库 /带宽 /IO 这些,和框架并没有太大关系的。

    我们选框架的时候,性能是最后看的 甚至根本不会太关心框架性能。。
    vovov
        12
    vovov  
       Mar 25, 2018
    我的小程序 API 就是用 laravel 写的。
    lazypu
        13
    lazypu  
       Mar 25, 2018
    后台管理也用 api 啊...
    run2
        14
    run2  
       Mar 25, 2018
    你可以后台用 laravel,API 用同样的 db migration / model 在 lumen 里(复制 粘贴)重新实现下
    ibegyourpardon
        15
    ibegyourpardon  
       Mar 25, 2018   ❤️ 8
    在这里跑个题,讲性能这件事,虽然也是老生常谈。

    有一句话我们可能听的比较多了,也就是绝大多数情况下,我们这些写 CRUD 做点东西的,很难触碰到一个框架本身的性能瓶颈,更多问题出现在类似数据库啊 I/O 这些地方。上面 10# 和 11# 的大佬也提到了这个观点。

    这话也没错,大多数情况下确实是这样。

    而且很多时候我们提出这样的说法,是因为有人会问出这种性能问题之类,比如楼主这样,在一个项目上手开始之前,先关心起性能问题来了。其实真没必要。

    but

    在我这一年的一些业务实践里,确实在数据库等通常我们认为先出问题的地方之外,先出现了 Laravel 这个框架的性能问题。

    我也没搞错,xhprof 等工具明明白白的告诉着你呢,就是 Laravel 慢。

    一段时间内,甚至严重影响到了我这业务的运行。 理由和 #5 楼说的差不多,大量第三方包的引入,写起来是爽了,是快了,跑起来,并发稍微上来点,就卡了。

    而且是比数据库还先挂。我们的数据库那个机器那个性能烂的哟……没事,前面高配的机器上跑的 Laravel 还挂的更快。

    考虑过 Lumen 这回事,最后还是放弃,没意义。

    目前解决方案是在已有的框架能满足业务的基础上,做一些拆分,有点类似微服务的性质,把某些重度业务用原生或者其他框架重写,既不会有非常大的工作量,又能给原先的 Laravel 减负。

    但回到楼主的问题里,我仍然坚持那个观点,只管上,没到你操心性能的时候。真的到了操心性能的时候,那是公司业务欣欣向荣你开心都来不及的时候。 像我这边 Laravel 崩到不行的时候,就是赶上了 2017 年底公司最大型的一个活动,流量远远超出我们预期,才变成那样。但给我重来一次,我仍然会在最开始选择 Laravel,写起来简单粗暴,能应付各种多变的需求,部署容易,为啥不用。。

    虽然以前说 DB 往往比 Laravel 先挂,现在我这里有个 Laravel 比 DB 先挂的反例,但还没到挂的时候,就先别操那么多心。

    真的。踩坑一年的过来人告诉你,放心踩,再来一次,我还会选择 Laravel。
    lzhd24
        16
    lzhd24  
       Mar 25, 2018 via Android
    @ibegyourpardon 学习了,老哥,实在!谢谢分享经验
    tktk
        17
    tktk  
       Mar 25, 2018
    lumen+dingo+jwt 值得你拥有。如果你非要用 laravel 写访问量不是很大的话也没问题。不过 session 这种用不到的服务就不要注册了。
    onlineismy
        18
    onlineismy  
       Mar 26, 2018
    管理后台不关 APP 接口啥事啊。。
    hzw94
        19
    hzw94  
       Mar 26, 2018
    学习了学写了,最近准备用 laravel 写个接口
    mandex
        20
    mandex  
       Mar 26, 2018
    建议不要用 Lumen,直接上 Laravel。

    之前一个项目用的 Lumen,少了很多东西,最后你还是要自己手动引入进来。

    而且 Lumen 跟 Laravel 相比并没有显著的性能优势。
    nicoljiang
        21
    nicoljiang  
    PRO
       Mar 26, 2018
    @mokeyjay 你说的是什么性能?我就知道,一个简单的 Hello World 就得上百毫秒,我作为代码狗的强迫症真心受不了。
    mokeyjay
        22
    mokeyjay  
       Mar 26, 2018   ❤️ 1
    @nicoljiang #21 曾经我也跟你一样。直到我后面意识到:人的生命的有限的,但机器的性能是无限的、可恢复的。
    很多时候开发速度比运行速度重要得多,慢就加配置加机器
    uoddsa
        23
    uoddsa  
    OP
       Mar 26, 2018
    @ibegyourpardon 谢谢大佬~~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5627 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 83ms · UTC 07:53 · PVG 15:53 · LAX 00:53 · JFK 03:53
    ♥ Do have faith in what you're doing.