吐槽一下 Swift + Ubuntu 吧,如果你也在玩的话… - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
quietjosen
V2EX    程序员

吐槽一下 Swift + Ubuntu 吧,如果你也在玩的话…

  •  
  •   quietjosen
    atjason 2016-12-26 18:57:12 +08:00 5161 次点击
    这是一个创建于 3260 天前的主题,其中的信息可能已经有所发展或是发生改变。

    新上了服务;

    定期看看日志;

    接口有很多错误;

    错误的原因是超时;

    超时的原因是上游服务挂了;

    上游服务挂了的原因是 Swift 崩溃了(请注意下面的 libswiftCore.so );

    崩溃的原因, Google 转了一圈,据说是 print(Error),一个多么标准的接口;

    https://bugs.swift.org/browse/SR-2476

    https://bugs.swift.org/browse/SR-2713

    于是,我也崩溃了…

    哎, Swift + Ubuntu ,小孩子玩玩还可以,真没有达到商用的级别。

    第 1 条附言    2016-12-29 21:03:42 +08:00

    更新:最后还是彻底解决了这个问题,又可以愉快地和 Swift + Ubuntu + Vapor 玩耍了。不过,还是打算花时间学习下 Perfect,看口碑更成熟稳定些。

    • 调试:使用 gdb 分析 core dump,找到崩溃的代码地址。
    • 原因:是 AES256CBC.swift 在调用 Linux 进程时,「偶尔」会导致 libswiftCore.so 崩溃。
    • 办法:替换生成随机数的方式。

    更多:https://atjason.com/daily/2016-12-29.html

    17 条回复    2016-12-27 18:11:19 +08:00
    xiubin
        1
    xiubin  
       2016-12-26 20:22:40 +08:00
    虽然没看懂,但是还是感觉很厉害
    yaxin
        2
    yaxin  
       2016-12-26 20:32:17 +08:00
    Swift 做后端服务语言?
    WildCat
        3
    WildCat  
       2016-12-26 20:44:21 +08:00
    quietjosen
        4
    quietjosen  
    OP
       2016-12-26 22:35:10 +08:00
    @yaxin 是的,但还不成熟。
    crayygy
        6
    crayygy  
       2016-12-26 23:31:58 +08:00
    Swift 的稳定性我一直持怀疑态度
    quietjosen
        7
    quietjosen  
    OP
       2016-12-27 08:36:34 +08:00
    @crayygy

    Apple 平台的 Swift 稳定性,不用怀疑;
    Linux 平台的 Swift 稳定性,不用怀疑;
    ragnaroks
        8
    ragnaroks  
       2016-12-27 09:55:54 +08:00
    @quietjosen 没毛病
    janxin
        9
    janxin  
       2016-12-27 10:54:53 +08:00 via iPhone
    为什么要在后端用…不坑都得烧高香
    quietjosen
        10
    quietjosen  
    OP
       2016-12-27 11:04:59 +08:00
    @janxin 胆肥呗;是个挺小的服务,正好在用 Swift ,就想试试;没想到就入坑了…
    skywayman
        11
    skywayman  
       2016-12-27 12:05:47 +08:00
    @quietjosen 回答真是一针见血!
    kilinmitai
        12
    kilinmitai  
       2016-12-27 16:43:57 +08:00
    @crayygy 不得已在 ubuntu 上写 swift 的表示+1
    也可能我人品差,就最近 1 个月就遇到 2 个 swift 本身的 bug ,一个提交了 bug 后说已经在 master 修复了,今天又遇到一个,正在蛋疼编译 swift 中。
    我的 swift 版本虽然没有每天更新,也不是太老,手头的版本就是上次提 bug 后才更新的,不到一个月。可见这东西离稳定还挺远的吧。
    kilinmitai
        13
    kilinmitai  
       2016-12-27 16:45:21 +08:00
    发现的两个 bug 在 xcode 上都没问题,都是 ubuntu 上实现的锅
    crayygy
        14
    crayygy  
       2016-12-27 18:04:50 +08:00 via iPhone
    @kilinmitai 我估计能用的版本要到 5 之后。。。
    quietjosen
        15
    quietjosen  
    OP
       2016-12-27 18:08:26 +08:00
    @kilinmitai 再说一个坑:昨天发现这个问题,就把 Swift 3.0 升级到 3.0.2 ,依然没有解决问题;结果另外一个在 3.0 下编译的程序,运行就直接挂(还过有监控,不然谁知道挂了啊);哎,这么小的版本升级都不兼容,我也是醉…

    手痒试了 Snapchat 版本,结果直接无法编译了,遂放弃之…
    quietjosen
        16
    quietjosen  
    OP
       2016-12-27 18:08:52 +08:00
    @kilinmitai 其实,很多不是实现有问题,是还没实现…
    quietjosen
        17
    quietjosen  
    OP
       2016-12-27 18:11:19 +08:00
    @crayygy 是的;.net 开源的更早,但估计 Linux 下的 .net 应该还是废柴(纯 YY 、无证据)

    关键没动力推进啊,这是个悖论:

    作为开发者,肯定是选用稳定、库多的平台;
    而作为平台,如果总是没有开发者使用,肯定不稳定、库不多。

    我就是那个可怜的、在 Swift + Ubuntu 中爬坑的宝宝…
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2618 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 23ms UTC 03:09 PVG 11:09 LAX 19:09 JFK 22:09
    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