0

我在nodejs(0.8.15)和express framework(>3.0)上创建站点,会有用户注册,很多聊天,发送私人消息,一些在线游戏,使用socket.io等等。

1)如果一次用户数量是 5000+ 用户在线,我应该如何加载页面以使我的网站快速:使用渲染加载页面

app.get('/', function(req, res) {
    res.render('anypage');
}

app.post('/', ..)

或与

$.ajax({ url: '/'
     , type: 'GET/POST'
     , dataType: 'html'
  })
  .done(function(data) {
     $('#content').load('anypage.html');
});

?

老实说,我想制作单页应用程序,但我担心性能和速度。

2)或者也许有另一种方法可以更快地加载页面?

谢谢你!

4

2 回答 2

1

1) 你的选择……很奇怪。app.get在服务器端,而$.ajax在客户端。我假设您在谈论 AJAX 与经典链接、URL。但问题是使用单页应用程序根本不会影响性能,至少不会开箱即用。这完全取决于您如何实现它。

但通常 AJAX 更有效,因为您不必每次都下载相同的 HTML(基本布局)和/或图像。它也更加用户友好,因为从一页转到另一页时没有“闪烁”。另一方面,实现跨浏览器的单页应用程序更加困难。当您处理动态脚本加载和/或浏览器历史记录时,难度会更高。

2)有成千上万种提高加载速度的技术。但它们中的大多数都基于适当的缓存和水平缩放。

于 2012-11-28T09:33:39.063 回答
0

我认为您应该专注于通过 api 提供 JSON 服务的节点层,并使用像 Backbone.js + jQuery 这样的客户端框架来呈现页面。它将把 UI 的大部分繁重工作推给客户端,而不是服务器。

于 2012-11-28T09:53:21.560 回答