kokdemo

前后端分离之后,通信这一块会不会产生新的瓶颈?

  •  
  •   kokdemo ·
    kokdemo · Sep 8, 2014 · 6624 views
    This topic created in 4450 days ago, the information mentioned may be changed or developed.
    我发现我最近在做的一个东西,向服务器发一个请求,再把数据取回来,要花2秒多的时间,相当影响页面的加载。

    这一块也会产生瓶颈吗?你们有事怎么处理的?



    ps:说实在的,因为搞这个分离,导致要开发很多接口,后端和前端的压力都大了不少……让我总对这种分离的思路很不看好。
    36 replies  •  2014-09-10 10:49:38 +08:00
    yemoluo
    yemoluo
    Sep 8, 2014
    1
    先做了再说. 分离前期很痛苦,后期很欢乐
    learnshare
    learnshare
    Sep 8, 2014
    2
    前后端分离,其实是降低了服务器的压力,提高了响应速度才对。后端搞成 RESTful 的话,应该有很多框架可以用,能够大大降低开发难度和工作量。

    响应慢的话,测试一下慢在哪里就好了。实在很慢,可以加一个 loading 效果到页面里,这样也比整页空白要好的吧。
    kokdemo
    kokdemo
    OP
    Sep 8, 2014
    3
    @learnshare 现在后端没有啥框架……都是需要一个内容,后端去写新的接口……构造一个长长的url来取数据……

    整个页面加载5s,服务器请求2s,我觉得这里问题很大……
    ferock
    ferock
    Sep 8, 2014 via iPhone
    4
    慢怎么都慢,不分离你就快了?
    gno23x
    gno23x
    Sep 8, 2014
    5
    2s多,这时间一般不是耗在建立请求,看下服务端的io操作耗时多少吧。
    fansekey
    fansekey
    Sep 8, 2014
    6
    经过长期测试,前端获取数据这种方式,性能很是问题。
    组建大UI才是王道。可以服务器端架设UI层,来从数据层获取数据支撑业务逻辑、模板渲染。

    UI层可以直接由前端负责,后端依然是restful接口。
    kokdemo
    kokdemo
    OP
    Sep 8, 2014
    7
    @ferock ……有道理

    部门的老大现在也没有申请更多的服务器,于是在一个服务器上跑了好多业务,配了两个tomcat做“负载均衡”,orz
    kokdemo
    kokdemo
    OP
    Sep 8, 2014
    8
    @fansekey 大ui?

    就是把模版渲染好,传到前端来?
    loading
    loading
    Sep 8, 2014 via Android
    9
    不说具体场景都是耍流氓!
    chshouyu
    chshouyu
    Sep 8, 2014 via iPhone
    10
    我们这的后端不懂jsonp。。。
    fengliu222
    fengliu222
    Sep 8, 2014
    11
    个人认为,先分析一下这2秒钟都花在了什么地方,如果是服务器端返回的慢,那应该不是前后端分离的问题。
    kaneg
    kaneg
    Sep 8, 2014
    12
    如果你不是做什么很复杂的业务操作,后台操作2s基本上认为是有性能问题
    learnshare
    learnshare
    Sep 8, 2014
    13
    2s 可能的原因有很多啊,细细排查一下问题在哪里。

    前后端分离利大于弊吧,不过就需要独立前端了,对小团队来说还是一个麻烦。
    lygmqkl
    lygmqkl
    Sep 8, 2014
    14
    感觉不太可能出现这样大的差别。
    wsph123
    wsph123
    Sep 8, 2014 via iPhone
    15
    这两秒又不是前后端分离本身导致的呀
    这样放在一起才更慢,找为啥慢 别怨前后端分离
    fansekey
    fansekey
    Sep 8, 2014
    16
    @kokdemo 是的
    ferock
    ferock
    Sep 8, 2014 via iPhone
    17
    @kokdemo 不会是win 吧,找到哪里慢才是解决问题的关键
    kzzhr
    kzzhr
    Sep 8, 2014
    18
    可以加个loading 进度条之类的动画来缓解延迟感
    也可以参考coding.net这样先加载默认内容
    反正不要把blank留出来就行
    kokdemo
    kokdemo
    OP
    Sep 8, 2014
    19
    @ferock ……我还真不清楚……
    kokdemo
    kokdemo
    OP
    Sep 8, 2014
    20
    @learnshare
    @wsph123

    我自己表达这个观点主要还是因为现在接口的开发没有任何的标准,也就是上面说的RESTful……

    需要个啥,就新弄个接口,工作量很大
    ferock
    ferock
    Sep 8, 2014 via iPhone
    21
    @kokdemo 你就按照function 打点分析
    kokdemo
    kokdemo
    OP
    Sep 8, 2014
    22
    @ferock 什么叫打点分析?
    leiz
    leiz
    Sep 8, 2014
    23
    @kokdemo 每个function打个时间看看哪里耗时最多
    ferock
    ferock
    Sep 8, 2014 via iPhone
    24
    @kokdemo 楼下告诉你了
    learnshare
    learnshare
    Sep 8, 2014
    25
    @kokdemo 系统规模大的话,一定要好好规划,否则后边都是坑
    takato
    takato
    Sep 8, 2014
    26
    @fansekey 根据多年测试经验来看,这种应用往往质量堪忧,因为缺乏测试切入点
    missdeer
    missdeer
    Sep 8, 2014
    27
    怎么感觉跟我司做法有点像,哦哈哈
    incompatible
    incompatible
    Sep 8, 2014
    28
    @fansekey 这跟传统的cgi编程有啥区别?
    fansekey
    fansekey
    Sep 9, 2014
    29
    @incompatible 其实是现实的一种折中,把业务展现相关的交由同一拨人去开发,剩下的一波人就可以努力完善数据了。
    fansekey
    fansekey
    Sep 9, 2014
    30
    @takato 测试的切入?是否可以考虑通过单元测试解决。
    takato
    takato
    Sep 9, 2014
    31
    @fansekey 单元测试可以,但是代码这道壁垒是很多测试工程师不愿意越过的(或者越不过的),而开发的思路总体和测试思路是不太一致的。所以会导致这个点上风险其实是比较大的,因为你的数据已经被包装成UI
    fansekey
    fansekey
    Sep 10, 2014
    32
    @takato 1. RESTful的数据接口是可以通过单元测试搞定。 2. UI层这块还是按照以前的测试方式可以搞定,因为原先最多就是直接访问数据库,并没有什么不同。3. 对于很多测试工程师不想越过代码,这个原因优点牵强。 如果是这样,单测完全可以由开发自己搞定,可以上ci等系统来保证功能正常。
    takato
    takato
    Sep 10, 2014
    33
    @fansekey 根据目前所观察,有些 *良好* 单元测试习惯的开发工程师,在国内不超过10%
    takato
    takato
    Sep 10, 2014
    34
    @fansekey lastComment.delete("些")
    fansekey
    fansekey
    Sep 10, 2014❤️1
    35
    @takato 嗯,你说的确实是现状。但是为啥有那么多的开发不愿意写单测,这个问题值得考虑。是否是写感觉浪费时间疑惑是写单测太难,或者单测经常修改。找到这些根结,是否就可以督促开发写单测了呢。比如单测太难,可能是设计分层有问题,经常修改可能是抽象不理想。写单测完全对开发是个互惠的过程。

    虽然现状是这个样子的,但在有效的模式下是可以达到单测保证质量的这个目标的,只是时间问题。
    takato
    takato
    Sep 10, 2014
    36
    @fansekey 其实目前总体行业现状是,平均值比国际水平的确低了很多,但不乏处于塔尖的人,如何帮助普通人快速地写单测,以及养成这个习惯,是一个亟待探讨的问题。

    感觉这个问题说大一点,和缺乏幸福感有关,我管这东西叫做信仰。

    曾经我也觉得信仰是个很虚的东西,直到我玩了《文明》

    才知道一个光环对于一个地区能力的加成是非常深刻的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1729 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 73ms · UTC 00:39 · PVG 08:39 · LAX 16:39 · JFK 19:39
    ♥ Do have faith in what you're doing.