【问题标题】:node.js vs apache as http backend for multiplayer gamenode.js vs apache 作为多人游戏的 http 后端
【发布时间】:2012-02-27 19:24:59
【问题描述】:

我有一个多人游戏,有一个基于 node.js 和 websockets 的网关和多个服务器。

现在它当然有一个客户端,它全部由静态文件(html、js、资源)组成。

目前我正在使用节点(快速框架)为他们提供服务

但是

node 是提供静态文件的最佳解决方案还是应该切换到 apache。

我对高流量没有太多经验。也许我应该考虑像 amazon s3 这样的服务?


这里是我如何使用 express.js 提供文件的简化版本:

app.get('/*', function(req, res) {
  res.sendfile(__dirname + '/client/' + req.params[0]);
});

【问题讨论】:

  • 如果您只是提供静态文件,那么 nginx 确实是不错的选择(有一些类似的,但 Apache 肯定没有竞争力!)。

标签: apache node.js websocket


【解决方案1】:

Content Delivery Network 肯定是一种有效的方法。如果您想采用这种方法,您会寻找类似Amazon Cloudfront 的东西——您可能不需要 Amazon S3 的功能。我在开头链接的维基百科文章中有一个不同内容交付网络的列表。

【讨论】:

    【解决方案2】:

    Express 提供静态文件服务功能。您可以看到它是如何实现的,因为它可能已经对您正在做的事情有所改进(不是每次都读取文件等)。

    【讨论】:

      【解决方案3】:

      我不确定我是否正确理解了这个问题,但 Express.js 允许通过简单的设置在文件夹中提供静态文件:

      app.use(express.static(__dirname + '/client'));

      【讨论】:

        猜你喜欢
        • 2014-09-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-05-28
        • 2013-05-22
        • 2012-07-09
        • 2011-07-16
        相关资源
        最近更新 更多