phper,项目 api 开发, 1 个月学习,学 laravel 还是直接学 go? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sytnishizuiai
V2EX    PHP

phper,项目 api 开发, 1 个月学习,学 laravel 还是直接学 go?

  •  
  •   sytnishizuiai 2019-04-03 10:03:24 +08:00 8590 次点击
    这是一个创建于 2390 天前的主题,其中的信息可能已经有所发展或是发生改变。

    新的项目,做前后分离(前端还没招)。

    试了几个框架的 api 框架,各种原因放弃了。

    公司项目 b2b 的,所以并发不大,目前 1 人开发( 3 4 年经验),现在想直接学 laravel 来做,或者直接学 go,1 个月时间,请问有什么建议吗?

    <>(原先的计划就是 php 开发,初版开发完自学下 go,有性能要求就部分功能 go 重构)

    80 条回复    2019-05-08 16:00:53 +08:00
    Mithrandir
        1
    Mithrandir  
       2019-04-03 10:04:15 +08:00
    go
    sytnishizuiai
        2
    sytnishizuiai  
    OP
       2019-04-03 10:06:03 +08:00
    @Mithrandir 1 个月,1 天 4 小时,可以写 api 没问题吗?高级功能可以开发的时候继续学
    gowk
        3
    gowk  
       2019-04-03 10:08:41 +08:00
    不要问,问就是 Go
    ershisi
        4
    ershisi  
       2019-04-03 10:30:46 +08:00   3
    laravel 说 go 的都是骗你的。信我,写了 laravel 再玩 go
    ericgui
        5
    ericgui  
       2019-04-03 10:31:37 +08:00   1
    laravel 还是不行的,这破框架一堆破事
    eslizn
        6
    eslizn  
       2019-04-03 10:32:57 +08:00   2
    做接口不用 go 也不应该用 laravel 啊,用 lumen 不是更合适么?
    sytnishizuiai
        7
    sytnishizuiai  
    OP
       2019-04-03 10:41:37 +08:00
    @eslizn lumen 确实快,但是 laravel 的一堆扩展装不了,我就装一个排行前 3 的扩展,每个步骤都报错,缺一堆配置,因为文档都是对标 laravel 的。
    v2dead
        8
    v2dead  
       2019-04-03 10:42:15 +08:00   4
    你这太盲目了,听 Go 吹太多了吧? b2b,没什么业务瓶颈,这种肯定不要给自己留坑稳定为主啊,上 go 你现在有 hold 住的能力么?虽然写起来确实简单,但并不意味着可以直接上项目。
    你之前是熟悉了 php 这种简单稳定可靠的环境,真正上线的话,你用 go 的服务可能连平滑重启都不知道怎么做。拿公司业务练手玩么?
    eslizn
        9
    eslizn  
       2019-04-03 10:49:23 +08:00   1
    @sytnishizuiai emmm,除了有特性依赖(例如 session、view )之外的,一般不会有其他问题吧?而且可以根据报错信息去看原因啊,遇到问题就换框架甚至语言?
    sytnishizuiai
        10
    sytnishizuiai  
    OP
       2019-04-03 10:49:40 +08:00
    @v2dead 不是看多 go 吹才用 本身就在学的计划内。项目不是练手玩,因为框架也要学习周期和踩坑,不过我目前没学过 go,确实容易碰到问题无从下手。

    十分感谢你的警告,我会好好想想。
    w516322644
        11
    w516322644  
       2019-04-03 10:53:03 +08:00   2
    laravel+dingo+jwt
    virus94
        12
    virus94  
       2019-04-03 10:53:19 +08:00   1
    先出产品再优化吧
    tomczhen
        13
    tomczhen  
       2019-04-03 10:55:40 +08:00 via Android   1
    没上过手的话 golang 依赖就能卡你两天,
    要快选 laravel/lumen。
    agdhole
        14
    agdhole  
       2019-04-03 10:57:44 +08:00   1
    php 老了慢了就换 golang
    初期用 laravel 凑合凑合吧,毕竟两个语言双开同时学也不需要什么功夫,为啥要对立起来呢
    qiayue
        15
    qiayue  
    PRO
       2019-04-03 10:57:57 +08:00   1
    要我说,直接上 CodeIgniter,看下文档,2 天就可以上手写 API 了,不需要用那么多依赖包,直接写就行了
    wo642436249
        16
    wo642436249  
       2019-04-03 11:01:28 +08:00   1
    针对你目前的场景,优先 laravel+dingo+jwt,自信的话直接上 go 的 gin
    ylsc633
        17
    ylsc633  
       2019-04-03 11:02:52 +08:00   1
    lumen 更快! 当然了,如果功能多了,建议直接 laravel

    用 go 的,还现学.. 建议还是别弄了.. 很多东西不熟,到时候写的一团糟..

    最害怕的是 开始稳定运行,结果几天后,服务器内存满了....

    乖乖用 laravel 吧,几乎任何常用的功能里面都有.开发也快!生态也好.

    等到性能和业务大到一定程度,换 go
    keepeye
        18
    keepeye  
       2019-04-03 11:04:43 +08:00   1
    just do it。先从自己熟悉的下手
    Egfly
        19
    Egfly  
       2019-04-03 11:05:08 +08:00   1
    肯定优先 laravel 啊,这还用想。先撸出来再说,真要优化的时候再去换。
    /tr>
    lzj307077687
        20
    lzj307077687  
       2019-04-03 11:06:14 +08:00   1
    laravel+dingo+jwt 最近在用这个做小程序项目
    快,没什么坑
    把部分异常抛出时的错误信息格式改下就开干了
    maigebaoer
        21
    maigebaoer  
       2019-04-03 11:12:10 +08:00 via iPhone
    开发要快,就用 php 呗
    Vegetable
        22
    Vegetable  
       2019-04-03 11:18:26 +08:00   1
    从自己职业规划方面考虑,有机会学新东西应该学,go
    从其他任何角度,比如公司利益,工作强度等等.php
    lihongjie0209
        23
    lihongjie0209  
       2019-04-03 11:22:13 +08:00   2
    哪个熟悉用哪个, 出了问题现在推荐 go 的人可不会帮你背锅。
    sytnishizuiai
        24
    sytnishizuiai  
    OP
       2019-04-03 11:23:17 +08:00   1
    @eslizn 后来解决了,联想到别人说的一句话 很有道理,就是 lumen 用到后来加功能 还是会变成 laravel,还不如索性就直接用 laravel 了,所以我标题就是说 laravel 和 go,因为正好有点时间学习。

    @qiayue 嗯,我之前用的 yii2 基础版和自用的简易框架,试了 yii2 的微框架 发现好多东西没有 比如 gii,那还不如直接用基础版方便,文档也全。

    谢谢大家的建议,我准备 laravel+dingo+jwt,直接开搞。今天突然有直接学 go 写 api 的想法是因为正好一样学,也有一段空闲时间可以抽出来,是我自大了。
    v2dead
        25
    v2dead  
       2019-04-03 11:34:39 +08:00   1
    可以自己业余时间写写 go 的项目练练手,说实话这就是另一个型号的 php,简单粗暴易上手。
    yesicoo
        26
    yesicoo  
       2019-04-03 11:36:33 +08:00
    我觉得 .net core
    mooncakejs
        27
    mooncakejs  
       2019-04-03 11:50:55 +08:00   1
    typescript,go 虽然快,但是开发并不快。 laravel 一个 api200ms 也太慢了点。
    Esen
        28
    Esen  
       2019-04-03 12:24:59 +08:00 via Android
    Java
    cydleadingx
        29
    cydleadingx  
       2019-04-03 12:44:13 +08:00   1
    先 lumen + swoole
    再 go 吧
    感觉用 go 纯粹写 api 还是业务的
    杀鸡焉用牛刀
    cgpiao
        30
    cgpiao  
       2019-04-03 13:37:18 +08:00 via Android
    CI4, laravel ide 不友好
    aimerforreimu
        31
    aimerforreimu  
       2019-04-03 14:13:33 +08:00 via Android
    推荐 go/gin,API 开发要啥 laravel,用 lumen 爽多了
    ragnaroks
        32
    ragnaroks  
       2019-04-03 14:27:50 +08:00
    asp.net core / go
    不要给自己添堵
    goodspb
        33
    goodspb  
       2019-04-03 14:38:55 +08:00 via iPhone
    我说 spring boot 不知道会不会被打
    ben1024
        34
    ben1024  
       2019-04-03 14:41:14 +08:00
    laravel 吧,go 不适合做业务层的东西
    ben1024
        35
    ben1024  
       2019-04-03 14:42:17 +08:00   1
    lumen 没必要,那点性能优化在 DB 层就给浪费了。
    开发工具的目的是方便开发者
    Lweiis
        36
    Lweiis  
       2019-04-03 14:47:22 +08:00
    刚从 Laravel 转到 Spring Boot,用的 Groovy,舒服
    Famio
        37
    Famio  
       2019-04-03 14:57:13 +08:00
    楼上大神们,Laravel 哪里差,能说说嘛?
    动不动就 diss,原因也不说
    crist
        38
    crist  
       2019-04-03 15:19:31 +08:00
    go 吹走一波!
    linxb
        39
    linxb  
       2019-04-03 15:20:38 +08:00
    无脑上 laravel,框架用熟练了开发速度不是一般的快
    rootww21
        40
    rootww21  
       2019-04-03 15:22:12 +08:00
    swoole ?
    Jason0803
        41
    Jason0803  
       2019-04-03 15:24:30 +08:00
    根据项目计划来,还是上 laravel 吧
    littleangel
        42
    littleangel  
       2019-04-03 15:30:45 +08:00
    swoole 感觉可以试一试
    DiverRD
        43
    DiverRD  
       2019-04-03 16:45:42 +08:00   1
    肯定 PHP 啊 你都说了你的业务并发不高,GO 就没必要用了,而且你 GO 也是入门,还不如熟悉的语言来做。PHP 真的没有你想到那么不好,而且你纯 API 可以直接用 yaf 组件用 composer 来就行 。性能会比 laravel 上一个档次
    notreami
        44
    notreami  
       2019-04-03 16:49:21 +08:00
    Java 走起,论生态,论设计架构,无视一切
    herozzm
        45
    herozzm  
       2019-04-03 16:53:07 +08:00 via iPhone
    直接上 go,为什么那么多人说 go 复杂,其实 php 比 go 复杂,go 可以编译成二进制,不需要 nginx,可简单了
    mamahaha
        46
    mamahaha  
       2019-04-03 17:09:06 +08:00
    现在考虑的不是学哪个,而是你 1 个月能不能可以上手用起来,如果可以,那证明你的工作太不值钱了。
    fengzeyan
        47
    fengzeyan  
       2019-04-03 18:28:54 +08:00
    spring boot 吧(逃
    ihipop
        48
    ihipop  
       2019-04-03 18:35:45 +08:00 via Android
    go
    claysec
        49
    claysec  
       2019-04-03 18:43:17 +08:00
    编程都是人用的和语言没绝对关系。所以用的差才会说不好用。
    ywisax
        50
    ywisax  
       2019-04-03 18:47:11 +08:00   1
    我公司就是专门做电商 startup 的。。。
    如果没有会产生大流量的场景(如秒杀、竞拍),那么直接上 laravel 是没错的。
    GO 不是不行,但是流量真上来,架构真复杂了,还是像楼下说的用 java 吧,秒杀一切。。。
    snail404
        51
    snail404  
       2019-04-03 19:03:34 +08:00   2
    新学 laravle 的还是不要直接用 lumen,熟悉了 laravel 的,再用 lumen 就 很爽
    lingxi27
        52
    lingxi27  
       2019-04-03 19:49:44 +08:00
    swagger 大法好,go-swagger 棒棒哒
    ksharp8
        53
    ksharp8  
       2019-04-03 19:52:34 +08:00
    原生 php 开发
    elarity
        54
    elarity  
       2019-04-03 20:13:20 +08:00
    兄弟,这用想么,当然是 go 啊
    molvqingtai
        55
    molvqingtai  
       2019-04-03 20:42:01 +08:00 via Android
    2
    blless
        56
    blless  
       2019-04-03 21:09:10 +08:00 via Android
    现学其实也还行… api 别的语言经验又不是不能用,撑死有些库用法不太熟而已,新手建议 beego,虽然很多人不推荐,但是文档跟整合还是挺适合新手的
    karllynn
        57
    karllynn  
       2019-04-03 21:36:19 +08:00
    没啥必要上 go,内部用你随便折腾都行……
    wafm
        58
    wafm  
       2019-04-03 21:39:15 +08:00
    @ywisax 请问贵司是?最近有电商需求
    justin2018
        59
    justin2018  
       2019-04-03 22:16:09 +08:00
    其实都可以吧~
    hundan
        60
    hundan  
       2019-04-03 22:33:01 +08:00 via Android
    从 0 开始学 为什么还有人推 go ? 肯定是 laravel 更熟悉啊
    ibugeek
        61
    ibugeek  
       2019-04-03 23:06:42 +08:00
    直接用 laravel,用 lumen 的话,还很多包不支持。
    嫌慢的话,多上台机器啊,机器钱难道会比人工还贵,快速撸才是硬道理。
    xbdsky
        62
    xbdsky  
       2019-04-03 23:08:40 +08:00
    php 是世界上最好的语言 手动狗头
    zjyl1994
        63
    zjyl1994  
       2019-04-04 00:56:43 +08:00 via Android   1
    我转 go 没用几天,web 开发概念都是相通的。找你们写 go 项目的朋友要一个基本骨架项目,你往里填业务就行,准备好谷歌随时查功能 go 里怎么实现。大量的连接数据库啊,页面过滤啊都有现成的库。要是你公司没 go,没地方要骨架项目的话,还是老实回去 laravel,到时候不会都没地方求助就尴尬了。
    ywisax
        64
    ywisax  
       2019-04-04 01:02:20 +08:00
    @wafm 微信跟 v2 的 ID 一样
    inframe
        65
    inframe  
       2019-04-04 01:21:06 +08:00 via Android
    go 的优点就是一个文件到处部署及其方便,找个框架套逻辑。
    熟悉的完成项目,不熟悉的做新技术研究
    sucks
        66
    sucks  
       2019-04-04 02:09:12 +08:00
    小公司要什么性能,就是要快速开发,快速迭代,lnmp 足矣,高并发可以改 lua 做接口
    guanhui07
        67
    guanhui07  
       2019-04-04 09:13:24 +08:00
    laravel 吧 ,挺好用的,觉得要性能可以上 go lua swoole 只要 hold 的住
    baijunyao
        68
    baijunyao  
       2019-04-04 09:26:42 +08:00   3
    @w516322644 #11
    @wo642436249 #16
    @lzj307077687 #20
    @sytnishizuiai #24
    筒子们; 你们这是误导啊; 都 2019 年了; laravel 都有了 /routes/api.php 路由文件了; 还有了 passport ; 单使用 laravel 框架开发接口就行了; 完全不需使用 laravel+dingo+jwt 这前些年流行的组合了;
    skiy
        69
    skiy  
       2019-04-04 09:38:11 +08:00
    我 laravel 和 gin 都用,感觉没差。如果写 WEB。。。但是性能方面没测过,不了解了。
    mirrorpen
        70
    mirrorpen  
       2019-04-04 09:44:53 +08:00
    laravel+dingo+jwt 用着很舒服
    zarte
        71
    zarte  
       2019-04-04 09:51:04 +08:00   1
    不要用 laravel 太难用了,自己用 composer 弄个小框架弄。
    个人觉得先用 php 因为初期需求变动频繁,php 推上去就可以测,go 你还有打包重启。
    konakona
        72
    konakona  
       2019-04-04 10:02:10 +08:00
    GO 吧。
    我本身是 PHP,也会 Laravel。但是你让我选,我还是推荐你选 GO。
    sytnishizuiai
        73
    sytnishizuiai  
    OP
       2019-04-04 10:17:26 +08:00
    谢谢大家,已开始看 laravel 文档了,因为目前就我一个人开发,所以就想法发散出来了- -

    其他语言等项目主体写完,可以一边学一边试着也写这个项目来练习。
    1000172
        74
    1000172  
       2019-04-04 11:02:53 +08:00
    laravel 做 api 可以配合看 swagger
    Evilk
        75
    Evilk  
       2019-04-04 14:59:39 +08:00
    @DiverRD 嗯,在理,纯 API 的话,上 yaf
    TeslaLyon
        76
    TeslaLyon  
       2019-04-04 15:47:36 +08:00
    @baijunyao 白总,淡定
    dvaknheo
        77
    dvaknheo  
       2019-04-05 22:36:17 +08:00
    为什么不直接裸用 PHP 呢?这不比你现学 laravel 快么
    dvaknheo
        78
    dvaknheo  
       2019-04-05 22:39:53 +08:00
    乖乖用 laravel 吧,几乎任何常用的功能里面都有.开发也快!生态也好.

    问题是 出 bug,怎么调。
    所以越简单越好, 前面 说的 CodeIgniter 我觉得不要他太多东西,这也可以用


    如果自吹自擂一下, 我写的 DNMVCS 这个框架也合适的,但现在还在 alpha 阶段。
    dvaknheo
        79
    dvaknheo  
       2019-04-05 22:44:19 +08:00
    楼上大神们,Laravel 哪里差,能说说嘛?

    1 调试,爆栈的时候,你都不知道在哪里出问题。
    2 性能,唯一能把 PHP 搞出性能问题框架。
    3 Java 善于解决 Java 发明的问题,这点 Laravel 也是。
    daqiaowijiu
        80
    daqiaowijiu  
       2019-05-08 16:00:53 +08:00
    swoole 坑有点多吧,怕是楼主扛不住
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     874 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 21:33 PVG 05:33 LAX 14:33 JFK 17:33
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86