V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
zhuchaowe
V2EX  ›  分享创造

新出炉的 AngularJS+golang+mongodb 架构的论坛

  •  
  •   zhuchaowe · 2015-08-12 20:00:41 +08:00 · 5277 次点击
    这是一个创建于 3177 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我是不会告诉你原论坛是从PHP(startbbs)改造的。

    StartBBS是一个开源PHP论坛,其实大致就长V站的样子。
    改造流程:
    1.先把mysql数据库迁移成mongodb(中间少了不少数据表。。你懂得)
    2.然后把PHP程序用golang重写了一遍,这个版本的前端渲染还是用的golang
    3.最近把golang程序写成API,前端用AngularJS实现了一遍。。(我觉得我主要是闲的)
    4.然后用prerender做了搜索引擎的优化,用redis缓存起来。(这是AngularJS的诟病)

    给大家体验一下感觉吧,是不是快的一比。。。

    过段时间要不咱也开源?
    有bug的地方,轻喷啊。。

    链接 : http://www.iosx.me

    46 条回复    2015-08-29 11:43:59 +08:00
    orvice
        1
    orvice  
       2015-08-12 20:10:50 +08:00
    唔 用revel写的,最近我也在用revel
    ETiV
        2
    ETiV  
       2015-08-12 20:15:20 +08:00
    LZ golang IDE 用的是啥?
    zhuchaowe
        3
    zhuchaowe  
    OP
       2015-08-12 20:19:47 +08:00
    @orvice 是啊Revel还是挺好用的
    zhuchaowe
        4
    zhuchaowe  
    OP
       2015-08-12 20:21:28 +08:00   ❤️ 1
    @ETiV 我用的IDEA的插件。。你可以再webstorm,phpstorm等等JB家族的IDE上装插件。当然sublime也可以用,不过感觉没IDEA的插件来的爽
    ETiV
        5
    ETiV  
       2015-08-12 20:32:06 +08:00
    原来如此,我试试去……

    谢谢!!
    ikaros
        6
    ikaros  
       2015-08-12 23:51:21 +08:00
    求开源,我看看angular肿么用的 = =
    ljbha007
        7
    ljbha007  
       2015-08-12 23:54:33 +08:00
    可以可以 点个赞
    guotie
        8
    guotie  
       2015-08-13 00:31:01 +08:00
    飞一样快。
    996635
        9
    996635  
       2015-08-13 01:09:19 +08:00
    楼主服务器哪里买的.速度好快!
    ss098
        10
    ss098  
       2015-08-13 07:23:28 +08:00
    @guotie
    @996635 据我感觉不觉楼主服务器速度特别突出的快,据我分析是使用了无刷新页面加载技术。
    zhouzm
        11
    zhouzm  
       2015-08-13 08:04:40 +08:00
    ng 做的系统操作感觉就是快
    qloog
        12
    qloog  
       2015-08-13 08:53:19 +08:00
    真是快~,嗖嗖的~
    zhuchaowe
        13
    zhuchaowe  
    OP
       2015-08-13 09:05:32 +08:00
    @ss098 就是angularjs,页面无刷新ajax呗。

    @996635 服务器在阿里云,最低的512M,1G配置,带宽5M
    @qloog 其实这里的快是有golang的运算性能,mongodb的存取性能,和angularjs的单页面ajax无刷新,3个一起作用产生的。
    kofj
        14
    kofj  
       2015-08-13 09:46:09 +08:00
    @zhuchaowe 确实很快,赞。但是你不觉的有闪烁咩,这个应该改进一下。
    wuyazi
        15
    wuyazi  
       2015-08-13 09:57:10 +08:00
    我也想做个论坛,请教第一批用户是怎么来的?
    void1900
        16
    void1900  
       2015-08-13 10:01:38 +08:00


    nilai
        17
    nilai  
       2015-08-13 10:04:28 +08:00
    求开源。。。。。。  一个字,真的很快
    shoumu
        18
    shoumu  
       2015-08-13 10:14:27 +08:00
    为什么每次点击一个链接之后进入的页面会首先显示一个颜色,然后这个颜色变浅变为白色,是我的眼睛有问题吗?
    jesusRui
        19
    jesusRui  
       2015-08-13 10:29:50 +08:00
    快的一笔啊,我都伙呆了
    mkeith
        20
    mkeith  
       2015-08-13 10:30:59 +08:00
    我也在用golang+pgsql写一个论坛
    zhuchaowe
        21
    zhuchaowe  
    OP
       2015-08-13 11:28:34 +08:00
    @shoumu
    @kofj 这个是做了一个CSS3的颜色渐变效果
    EchoChan
        22
    EchoChan  
       2015-08-13 11:30:09 +08:00
    楼主开源的时候记得在V上说一下。
    kokdemo
        23
    kokdemo  
       2015-08-13 11:30:57 +08:00
    @zhuchaowe 这个渐变太难看了……

    建议改下把……
    TangMonk
        24
    TangMonk  
       2015-08-13 11:35:57 +08:00
    这个速度很正常吧。。没有啥复杂的查询,又是ajax。跟golang 和mongo的关系不大
    zhuchaowe
        25
    zhuchaowe  
    OP
       2015-08-13 11:46:02 +08:00   ❤️ 1
    @TangMonk 关系确实应该不是很大。毕竟数据量就那么多。不过性能肯定好一点
    @nilai @EchoChan 开源肯定发帖纪念啊
    @kokdemo @shoumu @kofj 那我就去掉把。
    @wuyazi 第一批用户来自我的一个开发群
    napsterwu
        26
    napsterwu  
       2015-08-13 12:00:21 +08:00
    ⎡其实大致就长V站的样子⎦
    zhuchaowe
        27
    zhuchaowe  
    OP
       2015-08-13 13:14:42 +08:00
    @napsterwu 至理名言么
    21grams
        28
    21grams  
       2015-08-13 13:29:29 +08:00
    用golang有啥的好处,比php好在哪里?
    robinborn1987
        29
    robinborn1987  
       2015-08-13 13:41:08 +08:00
    求开源啊!
    Anybfans
        30
    Anybfans  
       2015-08-13 13:45:23 +08:00
    真快啊。。
    求开源。。
    asmore
        31
    asmore  
       2015-08-13 13:56:09 +08:00
    顶一个,快得一B
    x86
        32
    x86  
       2015-08-13 14:05:05 +08:00
    太快了不习惯...
    huobazi
        33
    huobazi  
       2015-08-13 14:07:54 +08:00
    求改回 mysql 或者 postgres
    ikaros
        34
    ikaros  
       2015-08-13 14:20:32 +08:00
    @21grams 部署方便, 直接丢编译好的文件到服务器就完了,不需安装任何其他依赖; 运行效率高
    fxxkgw
        35
    fxxkgw  
       2015-08-13 16:13:25 +08:00
    haokuai zanyige
    cobola
        36
    cobola  
       2015-08-13 17:37:16 +08:00
    真快
    le0rn0
        37
    le0rn0  
       2015-08-13 17:50:40 +08:00
    请问lz用的什么框架?
    w88975
        38
    w88975  
       2015-08-13 18:05:52 +08:00
    我断网试了下 发现是先跳转页面 再进行数据ajax的加载.
    liyaoxinchifan
        39
    liyaoxinchifan  
       2015-08-13 18:12:45 +08:00
    太快了!
    unique
        40
    unique  
       2015-08-13 19:08:15 +08:00 via Android
    mark 求开源
    dong3580
        41
    dong3580  
       2015-08-13 19:16:21 +08:00 via Android
    看到楼上一堆要来源的,楼主有时间总结个知识难点之类的比来源有意思😄
    zhuchaowe
        42
    zhuchaowe  
    OP
       2015-08-14 08:53:36 +08:00 via iPhone   ❤️ 2
    @dong3580
    @unique
    @Anybfans
    @robinborn1987
    @EchoChan
    @nilai 还在做一些整合与后台功能的开发工作开源了召唤你们好了,其实技术难点,也就是你要同时会go与angularjs的技术栈,以及衍生出来的一大波构建工具而已
    zonghua
        43
    zonghua  
       2015-08-16 21:11:56 +08:00
    真的好快好快啊,瞬时即达。
    firldlove
        44
    firldlove  
       2015-08-17 04:41:02 +08:00
    LZ可不可以詳細講一下第四條
    ”然后用prerender做了搜索引擎的优化,用redis缓存起来。(这是AngularJS的诟病)“
    是怎麼實現的?
    因為angular本身是前端渲染的,但LZ顯然是用angular實現了server side rendering。一個值得注意的地方就是,所有的URL基本上都不帶“#“。可是具體是怎麼實現的呢?煩請指教!
    huobazi
        45
    huobazi  
       2015-08-26 13:45:55 +08:00
    @zhuchaowe 开源记得 吼一声,我再试试撸回到 mysql 或者 pg 去 ,哈哈。

    心里总觉得 关系型数据库 可靠, 我这病,有救么?
    adubi
        46
    adubi  
       2015-08-29 11:43:59 +08:00 via Android
    楼主有兴趣一起做个网站吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5286 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 08:57 · PVG 16:57 · LAX 01:57 · JFK 04:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.