首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Asp.net mvc SPA应用服务器端呈现以提高性能

问Asp.net mvc SPA应用服务器端呈现以提高性能
EN

Stack Overflow用户
提问于 2017-01-23 23:34:30
回答 1查看 447关注 0票数 0

我们正试图从用asp.net mvc编写的单页应用程序中挤出同样多的性能。目前的布局是:

  • SQL服务器端,它与Asp.net数据库进行对话
  • 用JS/Html5 5+ requireJS和KendoUI编写的客户端SPA

我们的主要性能问题似乎是SPA方面与服务器的关系相当密切,可以检索当前页面所需的JS和HTML文件,还可以通过mvc WebApi从SQL中推送和提取数据。

我想稍微改变一下我们的架构,以限制客户端浏览器和服务器之间的闲聊。我正在阅读所有关于服务器端呈现的内容,但现在将其应用到成熟的应用程序中似乎是一项重要的重写。

只是想知道是否有人对处理这个问题的方法有任何建议,是否有任何库需要签出?

EN

回答 1

Stack Overflow用户

发布于 2017-01-24 01:14:04

在这个答案中,我假设您的性能问题是可用性问题:用户认为应用程序很慢。如果是这样的话,你应该意识到人们真正记得的是,应用程序太慢了,以至于很难完成他们想要完成的任务(对不起,我无法立即找到研究/结论的来源)。

但还是有办法的。首先,我要区分两件完全不同的事情:

  • 检索,或者更确切地说,捆绑静态文件
  • 对服务端点的ajax调用

静态文件问题不是问题。它不应涉及任何架构更改,而是一个学习曲线。您可以使用WebGrease (或替代方案)和/或使用BundleConfig来解决这个问题。这两个项目都是开箱即用的aspnet模板项目的一部分。

api调用的健谈性非常不同。解决这个问题需要回顾您的服务和应用程序设计。我可能会

  1. 从背景阅读开始,例如网络搜索q=reduce+chattiness+of+service+design。
  2. 绘制客户端与服务器之间的会话序列图;以及何时触发这些对话的草图。
  3. 根据这些图片,开始思考如何减少对话:
    • 静态/可缓存的数据能在一次大爆炸中获得吗?
    • Ajax数据读取一次就能得到更大的数据吗?

​

  1. 而且,异步模式可以用来表示用户没有看到任何延迟吗?Ajax数据推送应该是异步的,因此不应该造成很大的性能影响--除非应用程序是以这样的方式构造的,即用户正在等待数据推送完成后才能继续前进。
    • 研究应用程序的UI设计--facebook、trello--它们会将数据推入后台,这样用户就不会等待。

​

最后,我回到我的开场白,这可能是所有的UX设计,而不是低端的性能。用户能相当容易地完成任务吗?是否有任何实际用户告诉你这很慢,或者你只是假设是这样的呢?和用户坐在一起,看看他们是如何工作的;到底是什么在骚扰他们呢?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41817591

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档